我正在尝试在ggplot2中手动构建渐变图例。我有一个基础层,可以映射天和攻击之间的关系。然后,我从与天气条件相对应的各种不同数据帧中添加点。
以下是情节的代码:
ggplot(year_2001_2003, aes(wkd_ind, assaults)) + geom_line( ) +
geom_point(data=top_wmaxc, size = 4, aes(color="yellow")) +
geom_point(data=top_wmaxb, size = 4, aes(color="orange")) +
geom_point(data=top_wmaxa, size = 4, aes(color="red")) +
geom_point(data=top_wminc, size = 4, aes(color="darkblue")) +
geom_point(data=top_wminb, size = 4, aes(color="blue")) +
geom_point(data=top_wmina, size = 4, aes(color="lightblue")) +
facet_grid(.~year, scale="free")
我现在想构建一个图例,它通过我的颜色选择作为渐变从黄色移动 - >浅蓝。
我以为我可以这样做:
scale_color_gradientn(name="Temperature",
colours = c("yellow", "orange", "red", "darkblue", "blue", "lightblue"),
values=c(1.0,0.8,0.6,0.4,0.2,0))
但我收到错误:
Error: Discrete value supplied to continuous scale
1)有关如何解决此问题的任何想法? 2)没有颜色与我选择的指定颜色相对应。 " lightblue",例如,看起来像绿色。
所有构造如top_wmaxc
的数据帧只是各种变量的前90个百分点:
top_wmaxc <- year_2001_2003[year_2001_2003$w_maxc > quantile(year_2001_2003$w_maxc, 0.90), ]
top_wmaxc <- year_2001_2003[year_2001_2003$w_maxc > quantile(year_2001_2003$w_maxc, 0.90), ]
top_wmaxb <- year_2001_2003[year_2001_2003$w_maxb > quantile(year_2001_2003$w_maxb, 0.90), ]
top_wmaxa <- year_2001_2003[year_2001_2003$w_maxa > quantile(year_2001_2003$w_maxa, 0.90), ]
top_wminc <- year_2001_2003[year_2001_2003$w_minc > quantile(year_2001_2003$w_minc, 0.90), ]
top_wminb <- year_2001_2003[year_2001_2003$w_minb > quantile(year_2001_2003$w_minb, 0.90), ]
top_wmina <- year_2001_2003[year_2001_2003$w_mina > quantile(year_2001_2003$w_mina, 0.90), ]