When using ggplot2 in R, it clearly has a base_family
font. What is it? as the documentation just uses "" as can be seen in...
?theme_light()
It looks like ArialMT but not sure...
By default, R Presentations use the Lato font. However, it's also possible to customize the font used within a presentation using the font-family field of the first slide.
The base font size is 11 pts by default. You can change it with the base_size argument in the theme you're using.
ggplot allows you to change the font of each part of the figure: you just need to know the correct option to modify in the theme. (For a full list of customizable components of the theme, see this documentation.)
This is not a complete answer, but some of the pieces are as follows:
theme_set()
and theme_get()
can set and query your default theme for the sessiontext
list and its family
element will tell you want font name is being used. You can set that in the theme call in a ggplot to override the default for that theme.windowsFonts()
will tell you the mapping between font names and your installed system font names. I have no idea how to do this in the OS X or Linux platforms though.serif
, sans
, and mono
across all platforms.My main open question is what does the blank family name "" map to, since that is usually what is in the themes. If nothing is specified the default somehow gets set to sans
, since that it what it seems to be.
I also couldn't figure out how to replace the default font family in theme_gray()
. Think it is time for a question...
> theme_get()$text List of 10 $ family : chr "" $ face : chr "plain" $ colour : chr "black" $ size : num 11 $ hjust : num 0.5 $ vjust : num 0.5 $ angle : num 0 $ lineheight: num 0.9 $ margin :Classes 'margin', 'unit' atomic [1:4] 0 0 0 0 .. ..- attr(*, "unit")= chr "pt" .. ..- attr(*, "valid.unit")= int 8 $ debug : logi FALSE - attr(*, "class")= chr [1:2] "element_text" "element"
And the system font mapping in windows:
> windowsFonts() $serif [1] "TT Times New Roman" $sans [1] "TT Arial" $mono [1] "TT Courier New" >
An example:
library(ggplot2) ggplot(mtcars, aes(x=wt, y=mpg)) + geom_point() + ggtitle("Fuel Efficiency of 32 Cars") + xlab("Weight (x1000 lb)") + ylab("Miles per Gallon") + theme(text=element_text(size=16, family="serif"))
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With