Функция в R, которая дает пользовательский цвет (из заданного интервала) границам непрерывного графика данных, используя ggplot2

Функция должна использовать цвета из заданного масштаба (между низким и высоким) для цветов границы, если я строю график непрерывных данных с помощью ggplot2.

> scale_colour_continuous <- function(...) {  
> ggplot2::scale_colour_gradient(..., low = "#FFFF00", high = "#3366FF",
>                                na.value = "#262626", aesthetics = "colour")

К сожалению, мой код выше не работает. Я нахожу, если очень интересно, потому что то же самое для заполнения сюжета прекрасно работает с теми же аргументами (aesthetics = "fill"). Что мне здесь не хватает?

1 ответ

Вам не нужно явно звонить ggplot2, Если вы хотите, вы можете добавить оператор if, который проверяет, загружен ли ggplot2. Это работает как требуется.

my_theme<-function(...){
  scale_colour_gradient(..., low = "#FFFF00", high = "#3366FF",
            na.value = "#262626", aesthetics = "colour")

}
library(tidyverse)
iris %>% 
  ggplot(aes(Sepal.Length,Petal.Length,col=Sepal.Length))+
  geom_point()+
  my_theme()#wanted to make a theme so don't mind the naming.
Другие вопросы по тегам