[R] bitmap images in tcltk

John Fox jfox at mcmaster.ca
Tue May 6 22:54:10 CEST 2003


Dear Dirk,

The tkrplot package is indeed interesting, but my understanding is that 
it's for putting R graphics in a widget. My bitmaps are for things like 
button-tops. Perhaps I'm missing something.

Regards,
  John

At 01:53 PM 5/6/2003 -0500, Dirk Eddelbuettel wrote:
>On Tue, May 06, 2003 at 02:24:10PM -0400, John Fox wrote:
> > I'm writing a package using tcltk. Thanks to Peter Dalgaard's excellent
> > work on the tcltk package, almost everything has gone very smoothly. I'm
>
>Seconded. It is truly excellent, and cross-platform without any heachaches.
>
> > stymied, however, by the following problem:
> >
> > I want to incorporate a bitmap image, stored as an xbm file, in a widget.
> > To take a simple example,
> >
> >     top <- tktoplevel()
> >     tkgrid(tklabel(top, bitmap="@file.xbm", fg="red"))
> >
> > will work as long as file.xbm is in the current directory; 
> alternatively, I
> > could specify the path to this file. The problem is that I can't figure 
> out
> > a reliable way of predicting (or discovering) where the bitmap file will
> > reside when my package is installed.
> >
> > Any suggestions would be appreciated.
>
>There is a much easier solution thanks to Luke's tkrplot which is available
>for win32 and unix on CRAN.  A simple example is
>
> > tt <- tktoplevel()
> > pl <- tkrplot(tt, function() plot(1:10, main="foo"))
> > tkpack(pl)
>
>It can do fancier stuff too by using a 'replot' feature. The example from
>the help page varies a simple function by tieing a callback command and
>variable from a scale to a function around tkreplot():
>
>      tt <- tktoplevel()
>      bb<-1
>      img <-tkrplot(tt, function() plot(1:20,(1:20)^bb))
>      f<-function(...) {
>          b <- as.numeric(tclvalue("bb"))
>          if (b != bb) {
>              bb <<- b
>              tkrreplot(img)
>          }
>      }
>      s <- tkscale(tt, command=f, from=0.05, to=2.00, variable="bb",
>                   showvalue=FALSE, resolution=0.05, orient="horiz")
>      tkpack(img,s)

-----------------------------------------------------
John Fox
Department of Sociology
McMaster University
Hamilton, Ontario, Canada L8S 4M4
email: jfox at mcmaster.ca
phone: 905-525-9140x23604
web: www.socsci.mcmaster.ca/jfox




More information about the R-help mailing list