首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设置y轴颜色条的格式

设置y轴颜色条的格式
EN

Stack Overflow用户
提问于 2013-10-14 08:24:53
回答 1查看 82关注 0票数 0

我对ggplot是个新手。我想知道这个问题有一个快速的答案。

我被要求用Y轴表示数据的值类别,并将其显示为多线图。超链接中的绘图是在电子表格中手动绘制的。我正在尝试生成与y尺度对齐的彩色标签。

original plot & data到目前为止,我已经成功地用下面的代码重现了线状图

代码语言:javascript
复制
ggplot(p2r_m,aes(x=time,y=value,group=variable,colour=variable)) + 
geom_line() +                                 
geom_point( size=4,shape=21,fill="white")

谢谢

EN

回答 1

Stack Overflow用户

发布于 2013-10-14 09:44:34

这里有一种可能性-你可以用geom_text制作标签,并在你喜欢的任何地方用geom_rect制作一些颜色。如果我们制作一个包含所需数据的数据帧:

代码语言:javascript
复制
labels <- data.frame(id = c("Very poor", "Poor", "Moderate", "Good", "Very good"), 
  min = seq(0, 80, 20), max = seq(20, 100, 20))

然后,您需要将xy映射移动到每个geom (或者至少我不知道有什么方法可以避免这种情况):

代码语言:javascript
复制
base <- ggplot(p2r.m) + 
  geom_line(aes(x=time,y=value,group=variable,colour=variable))  +
  geom_point(aes(x=time,y=value), size=4,shape=21,fill="white")

然后引用标签数据:

代码语言:javascript
复制
base + geom_rect(data = labels, aes(ymin = min, ymax = max,xmin = 0, xmax = 0.5, fill = id)) + 
    geom_text(data = labels, aes(x = 0.25, y = (min + max)/2, label = id), angle = 90) + 
    guides(fill = F)

顺便说一下,您的数据似乎与您发布的曲线图不匹配。

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

https://stackoverflow.com/questions/19351866

复制
相关文章

相似问题

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