ggplot2 scale_fill_gradient2没有显示中间颜色

时间:2018-01-15 14:11:14

标签: r ggplot2

我正在尝试使用颜色渐变来构建绘图。一切都可以正常使用2种颜色(低,高)但是当使用scale_fill_gradient2()作为第3种颜色(中间)时,没有任何反应。好吧发生了一些事情:mid替换低,我仍然最终得到2种颜色。 我的R版本和我的所有软件包都是最新的。

我的数据:

> head(Data)
       Datum  X  Y Total
1 31/05/2012 21  5    36
2 31/05/2012 21 19     3
3 31/05/2012 11 25   100
4 31/05/2012 21 11    16
5 31/05/2012 11 17     0
6 31/05/2012 21 23    14

我的代码:

ggplot(Data, aes(X, Y)) +
  xlim(0,40) +
  ylim(0,50) +
  coord_equal() +
  geom_raster(aes(fill=Total)) +
  scale_fill_gradient2(low="darkgreen", mid="black", high="red")

enter image description here

有什么想法吗?

PS:如果一个问题解决者也知道这个问题的答案,那就欢迎:注意我的条很长,x = 11的那条到达x = 21的那条。是否有一种缩短它们的方法吗?

1 个答案:

答案 0 :(得分:1)

您可能希望set midpoint = 0和州limits = c(-max(Data$Total), max(Data$Total))扩展所显示的色条范围。