首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >以连续时间轴为x轴的堆叠条形图

以连续时间轴为x轴的堆叠条形图
EN

Stack Overflow用户
提问于 2013-01-11 00:03:11
回答 1查看 479关注 0票数 1

我们正在监控3个进程A、B和C,它们将始终处于级别X、Y或Z。当进程更改级别时,A协议会记录下来。

代码语言:javascript
运行
复制
df = read.csv(tc <- textConnection('Time1,Process1,Level1
2013-01-09 18:00:34,A,X
2013-01-09 18:00:34,B,Y
2013-01-09 18:00:34,C,X
2013-01-09 18:00:59,A,Z
2013-01-09 18:01:06,A,X
2013-01-09 18:01:10,C,Y
2013-01-09 18:01:10,B,Z
2013-01-09 18:01:13,A,Z
2013-01-09 18:01:18,A,Off
2013-01-09 18:01:18,B,Off
2013-01-09 18:01:18,C,Off
'),header=TRUE)
close.connection(tc) 
df$Time1 = as.POSIXct(df$Time1)

监控在18:00:34开始,18:01:18关闭。在18:00:34到18:00:59之间,进程A处于级别X,在18:00:59到18:01:06之间,进程A处于级别Z。

我们希望在x轴上显示18:00:34和18:01:18之间的连续间隔,以及三个等宽的水平条(A、B、C),它们表示x轴上显示的时间的当前工艺水平。

低于我们上次尝试的。图表的整体结构似乎是正确的,但时间轴没有多大意义,数据也丢失了。(我们不需要Off类别,但一旦时间轴有意义,可能很容易将其去掉。)任何指导都将不胜感激。

代码语言:javascript
运行
复制
ggplot() + 
  geom_bar(data=df, aes(x=Process1, y=Time1, fill=Level1)) + 
  coord_flip()

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-11 01:18:21

我不确定是否使用geom_bar来做这件事,但是如果我增加行的大小,我可以让geom_line做一些类似的事情。

代码语言:javascript
运行
复制
library(ggplot2)
library(scales)
ggplot(df, aes(x=Time1, y=Process1, group=Process1, colour=Level1)) + 
  geom_line(size=5) + scale_x_datetime("",  labels = date_format("%H:%M:%S"))

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14262056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档