Ответ 1
Это не полный ответ, но некоторые из них следующие:
- Темы сложны: http://ggplot2.tidyverse.org/reference/theme.html
-
theme_set()
иtheme_get()
могут устанавливать и запрашивать вашу тему по умолчанию для сеанса - Тема - это список, и названный
text
список и его элементfamily
укажут, что вы хотите использовать имя шрифта. Вы можете установить это в вызове темы в ggplot, чтобы переопределить значение по умолчанию для этой темы. - В окнах
windowsFonts()
будет отображаться сопоставление между именами шрифтов и именами установленных вами системных шрифтов. Я не знаю, как это сделать на платформах OS X или Linux. - По умолчанию для всех платформ используются
serif
,sans
иmono
.
Мой главный открытый вопрос - это то, на что указывает пустая фамилия "", поскольку это обычно то, что находится в теме. Если ничего не указано, по умолчанию каким-то образом устанавливается значение sans
, так как это похоже на то, что кажется.
Я также не мог понять, как заменить семейство шрифтов по умолчанию в theme_gray()
. Подумайте, пришло время задать вопрос...
> 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"
И отображение системного шрифта в окнах:
> windowsFonts()
$serif
[1] "TT Times New Roman"
$sans
[1] "TT Arial"
$mono
[1] "TT Courier New"
>
Пример:
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"))