用渐变填充geom_area(ggplot2)

时间:2017-02-25 15:57:35

标签: r ggplot2 gradient

我在为我的区域绘图应用渐变填充时遇到了一些麻烦。

数据如下:

> df
   year  annual
1  1960  0.0100
2  1961 -0.2700
3  1962 -0.3450
4  1963 -0.6508
5  1964 -0.9458
6  1965 -0.2458
7  1966  0.9492
8  1967  0.5383
9  1968  0.6275
10 1969  0.0000

我为渐变设置了colorRampPalette,我知道这有效。

spi.cols <- colorRampPalette(c("darkred","red","yellow","white","green","blue","darkblue"),space="rgb")

根据情节,我的目标是让填充颜色遵循年度列中的值。这样可以很容易地判断出值在某些边界内。现在,情节似乎在考虑它的每一个价值&#34;填充&#34;等于零,因此只用一种颜色填充它。

ggplot(df, aes(x = year)) +
   geom_polygon(aes(y = annual, fill = annual)) +
   theme_classic() +
   scale_fill_gradientn(colours = spi.cols(12), limits = c(-2.5, 2.5), guide = "legend")

我还在渐变中指定了我喜欢的休息时间,但我不确定如何利用它。我试图在scale_fill_gradientn的值中使用它,但这是不成功的。

enter image description here

spi.breaks <- c(-2.5,-2,-1.6,-1.3,-0.8,-0.5,0.5,0.8,1.3,1.6,2,2.5)

非常感谢任何帮助

0 个答案:

没有答案