如何在R中绘制二进制状态时间序列?

时间:2014-03-07 01:57:24

标签: r

我的数据是一些带时间戳的二进制状态。例如,

  

31/01/2014 00:00:04,1

     

31/01/2014 00:00:09,0

     

31/01/2014 00:00:13,1

状态将始终形成1到0,然后从0到1。

我想在1级(y轴)绘制一条水平线,时间00:04到00:09。

在时间00:09到00:13之间绘制0级水平线。

垂直线应在交易时。

有没有办法策划这个?

感谢。

2 个答案:

答案 0 :(得分:2)

编辑:将geom_segment更改为geom_step

# data
a <- as.POSIXct(Sys.time())
mydf <- data.frame(time=seq(a,a+50,by=10),state=0:1)

library(ggplot2)

ggplot(mydf) +   geom_step( aes(x=time , y=state ))

enter image description here

答案 1 :(得分:1)

plot(yourData$time, yourData$state, type="s")绘制你想要的楼梯。资本type="S"向另一方发起。