Установка значений по умолчанию для геометрий и шкал ggplot2
Посылка для ggplot2 позволяет довольно легко отменить необходимость в нескольких или повторяющихся строках + opt()...
. Однако я хотел бы знать, есть ли способ определить значения по умолчанию для геометрий и цветов шкалы. Вместо того, чтобы писать ...+ scale_fill_manual()
для каждого сюжета, я хотел бы иметь возможность установить его и забыть. Аналогично, я хотел бы иметь возможность устанавливать параметры геометрии, поэтому мне не нужно повторять (или забывать повторить) такие вещи, как geom_text(...,size=3,color="white")
Обновление:
Для масштабов в какой-то момент кажется, что существует метод:
set_default_scale("colour", "discrete", "grey")
Но эта функция, похоже, не существует в последней версии ggplot2.
Ответы
Ответ 1
Для этого есть другой метод. Вы можете по существу переписать любую шкалу эстетики, например:
scale_colour_discrete <- function(...) scale_colour_brewer(..., palette="Set2")
scale_fill_discrete <- function(...) scale_fill_brewer(... , palette="Set2")
Теперь ваша эстетика будет окрашена или заполнена после этого поведения.
В соответствии с: https://groups.google.com/forum/?fromgroups=#!topic/ggplot2/w0Tl0T_U9dI
В отношении значений по умолчанию для геометров вы можете использовать update_geom_defaults
, например:
update_geom_defaults("line", list(size = 2))
Ответ 2
Я не могу придумать ничего полезного для geom
s, но для scales
одним из вариантов было бы использование того факта, что компоненты ggplot
- это все просто объекты R, которые могут быть сохранены, сохранены и переназначается, как и любой другой.
Итак, вы можете создать свою собственную коллекцию "стандартных" версий многих масштабов, например:
sfmDefault <- scale_fill_manual(...)
scmDefault <- scale_colour_manual(...)
и т.д.. с вашими желаемыми значениями по умолчанию. Поместите их в свой .RProfile или где угодно и используйте их по мере необходимости.