我在R中做一个简单的散点图,当我尝试使用colorbrewer调色板“RdBu”时,我得到的东西明显不同,我不明白为什么。
以下是我的数据摘要
> summary(d$Year)
Min. 1st Qu. Median Mean 3rd Qu. Max.
1880 1914 1947 1947 1980 2014
> summary(d$NHem)
Min. 1st Qu. Median Mean 3rd Qu. Max.
-52.000 -21.500 -2.000 3.326 16.000 91.000
> summary(d$NHem.bin)
-3 -2 -1 0 1 2 3 4 5
1 23 28 37 22 4 8 11 1
当我使用命令
时ggplot(d, aes(x=Year, y=NHem, colour=NHem.bin)) + geom_point() + scale_fill_brewer(palette = "RdBu")
我明白了
所以这显然不是“RdBu”。我做错了什么?
另外,我正在创建一个bin var,以便我可以尝试在3个不同的图中保持相同的渐变。
由于我已经在这里,如何反转比例,使蓝色端对应更多负数,红色对应更正数?
THX
答案 0 :(得分:4)
首先,你没有映射fill
美学。其次,您应该映射color
美学,或者指定具有填充的点形状:
library(ggplot2)
ggplot(mtcars, aes(wt, mpg, colour = factor(cyl))) +
geom_point() +
scale_color_brewer(palette = "RdBu") -> p1
# or
ggplot(mtcars, aes(wt, mpg, fill = factor(cyl))) +
geom_point(shape=21, color=NA) +
scale_fill_brewer(palette = "RdBu") -> p2
gridExtra::grid.arrange(p1, p2)
给出