Довольно изящная функция библиотеки Python seaborn
состоит в том, чтобы иметь возможность изменять все размеры графиков, меток и большинства элементов графика с помощью одной команды: set_context(context), для разных контекстов размеры фигур соответственно изменяются. , поэтому, если контекст talk
, все больше, но для paper
они уменьшены, поэтому есть место для включения дополнительной информации в один график.
Есть ли функция, эквивалентная set_context()
в ggplot2
?
в настоящее время я использую много инструкций theme
, таких как:
...
theme(text = element_text(size=14)) +
...
и хардкодить все размеры в коде
Я не слишком хорошо знаком с seaborn
, но, основываясь на вашем описании, я думаю, что в {ggplot2} есть две функции, которые могут удовлетворить ваши потребности.
Если вы хотите, чтобы все ваши графики использовали одну и ту же тему, вы можете запустить theme_set()
в верхней части вашего сценария/документа, чтобы использовать одну и ту же тему для всех ваших графиков. Здесь вы можете объявить конкретную «полную тему» , а затем использовать base_size
, чтобы установить размер шрифта по умолчанию. Поэтому я часто использую theme_set(theme_bw(base_size = 16))
в начале многих своих сценариев, чтобы не повторять это для каждого сюжета.
Если вы хотите применить разные сложные темы к разным графикам, вы можете просто сохранить каждую тему в переменной и вызывать ее по мере необходимости.
library(ggplot2)
# create custom themes and assign to variable
theme_talk <- theme(text = element_text(size = 14))
theme_paper <- theme(text = element_text(size = 8))
p <- ggplot(mtcars, aes(disp, mpg)) + geom_point()
# call custom themes as needed
p + ggtitle("Talk theme has big text") + theme_talk
p + ggtitle("Paper theme has small text") + theme_paper
Created on 2022-11-23 with reprex v2.0.2
посмотрите здесь: statisticsglobe.com/ggthemes-package-r