[Rd] RE: [R] Graphics-Device-Size vs. Window-Size
Thu, 9 Nov 2000 11:41:02 +0100
thank you for responding. I indeed overlooked, that units="inch" gives
stable results, independent of resizing the graphics window on the screen.
And indeed I would find some way fiddling around to get my graphic done.
However I see a general problem here and I would like a general solution:
Obviously we are dealing with two coordinate systems: the graphics device
size (call it representation layer) and the window size on the screen (call
it presentation layer). If I do any graphics programming, I do not want to
depend on arbitrary window sizes. It is nice to know my device has 8 inches
and that text x needs y inches in width. But the adress space in which
plotting is done are the "user" coordinates. So, for the simplest example,
specifying xlim=c(0,1) generates a stable reference WHICH DOES NOT CHANGE ON
RESIZING THE GRAPHICS WINDOW. As strwidth(units="user") DOES CHANGE ON
RESIZING THE GRAPHICS WINDOW the units arguably ARE NOT the user
I tend to believe this is a BUG. Same for units="figure".
I also tend to believe, that resizing a graphics window should rescale the
font size used ON SCREEN, because currently we have the following mixup of
representation layer and presentation layer: if a certain text in cex=1
fills 50% width of my user coordinates on the device, and I decrease window
size, with stable screen font size the same text now fills more than 50%
width. This 'more' is reflected in strwidth(units='user'), but as said
before, the units strwidth(units='user') gives are not user but
user*(device/window). So if a special strwidth measure is needed which
refers to the presentation layer it should be named accordingly. Those
units='user' and units='figure' should return stable measures refering to
the representation layer.
system x86, Win32
r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: email@example.com