r 中将颜色作为输入的用户定义函数

user defined function in r that takes color as an input

我正在尝试创建一个函数来绘制我的数据

它有 3 个输入,(dataframe, string, string)

我正在努力处理最后一个字符串。

假设我的函数被调用 plot_by_city(dataframe, "Amsterdam","springgreen4")

然后我希望它以一种颜色的方式生成我的情节。 我该怎么做?

这是函数的代码:

plot_by_city<- function(dataframe, city_name, color){
  data1 <- filter(dataframe, city == city_name)  
 ggplot(data = data1, aes(x= magnitude, y= injuries)) + 
   geom_point(position= "jitter",shape=23, fill= "red", color="black", size=3)
}

红色是我的默认颜色,以防输入中没有定义颜色。

您可以通过以下方式编写函数:

library(dplyr)
library(ggplot2)

plot_by_city<- function(dataframe, city_name, color = 'red'){
  data1 <- filter(dataframe, city == city_name)  
  ggplot(data = data1, aes(x= magnitude, y= injuries)) + 
    geom_point(position= "jitter",shape=23, fill= color, size=3)
}
#Red color
plot_by_city(dataframe, "Amsterdam")
#springgreen4 color
plot_by_city(dataframe, "Amsterdam","springgreen4")