系列'值(R ggplot)
我有一个时间序列数据框,并定期读取压力读数。
time pressure diff
1 2014-09-09 09:12:29 1.6191598 0.00000000
2 2014-09-09 09:12:28 3.0137784 -0.07668387
3 2014-09-09 09:12:27 1.1958183 0.58693260
4 2014-09-09 09:12:26 2.2803681 1.07774954
5 2014-09-09 09:12:25 -0.7614310 -0.17864232
6 2014-09-09 09:12:24 0.9914106 -0.70121973
我可以使用ggplot2轻松地绘制压力线图。 但是在这条线下面,我想要有一个水平条,其中填充颜色取决于两个连续样本之间的压差(df场diff
)。
例如,在压力差为零的情况下(即压力在两个连续采样之间没有变化),条会是白色的。 填充颜色会随着差分正向增加(比如说)红色而变深,而随着负向值增加,填充颜色会变成蓝色。
生成样本数据:
dfTimeSeries <- data.frame(time = Sys.time()-seq(1:10),
pressure = rnorm(10,1),
diff = c(0,diff(dfTimeSeries$pressure)))
情节的第一部分
ggplot(data = dfTimeSeries)+
geom_line(aes(x=time, y=pressure))
我怎样才能编码横跨整个x(时间)轴的横条,并且其填充颜色会根据相应时间戳的df的diff
字段而变化?
我最终将geom_rect
对象并排放置,每个diff
值都有一个矩形。 基本概念如下:
ggplot(data = dfTimeSeries)+
geom_line(aes(x=time, y=pressure))+
geom_rect(aes(xmax=time+.5, xmin=time-.5,ymax=-3,ymin=-2, fill=diff))
我需要调整色阶,将条纹放在不同的图表中,然后做一些更多的化妆品排列等。
链接地址: http://www.djcxy.com/p/86151.html下一篇: ggplot2 time series plot with colour coded wind direction arrows