On Apr 2, 2011, at 11:16 AM, David Winsemius wrote:
On Apr 2, 2011, at 6:02 AM, Erich Neuwirth wrote:
The problem of changing the default font used fpr the windows
graphics
device seems to be quite complicated.
As I wrote already
windowsFonts(myfont="Consolas")
par(family="myfont")
will make the windows graphics device use Consolas as the
defaut font for labels.
Therefore, a function call like
plot(1:10,main="Title")
will use Consolas for labeling.
It will, however, not change the default for
mosaic(UCBAdmissions)
The mosaic plot will still use the original default font
for the device, which in a standard configuration
seems to be Arial.
par(family=NULL)
will reset the current default font to the original default font,
so after this command
plot(1:10,main="Title")
will use Arial again.
The the font family used in graphics from package grid is set by
explicitly using gpar paramenter in calls to functions from that
package.
gpar has default values, but there seems to be no way
of changing the default values of the gpar object.
Does anybody on the list know if there is a way of changing the
default
values of gpar objects?
Make one with your desired values:
gpCon <- gpar(fontfamily="Consolas", fontsize=8)
Then pass it to the appropriate argument. I don't have a Windows
device nor a copy of that font but the following changes several of
the defaults on a Mac if I use "Times" instead of"Consolas".
mosaic(Titanic, main="Test of gpar",
gp_varnames=gpCon,
gp_labels=gpCon )
You _might_ be able to change the defaults with grid:::set.gpar()
or with grid:::grid.Call("L_setGPar", list(...)) but my efforts did
not succeed (unless success is measured by undesirable side-effects
on one's system.) Neither of those functions is "exposed", so it
would appear that their use is not recommended (or documented). I
was able to change the internal values returned by get.gpar() but
passing them on to mosaic() did not succeed.
And then I re-read Prof Ripley's reply and the light dawned:
pdf.options(family="Times")
pdf(); mosaic(Titanic, main="Test of gpar")
dev.off()
# Works
My remaining puzzlement is how to apply this strategy to the Mac
screen device:
quartz(family="serif"); mosaic(Titanic, main="Test of gpar")
# Does not work
# Nor does
quartzFonts("serif"); mosaic(Titanic, main="Test of gpar")
# Nor any other of several permuations of arguments
--
David Winsemius, MD
West Hartford, CT
______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.