首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >分组数据并绘制多条线

分组数据并绘制多条线
EN

Stack Overflow用户
提问于 2012-04-27 18:35:57
回答 2查看 100.9K关注 0票数 24

我想在R中绘制这个数据集的多条线:(x =年份,y=值)

代码语言:javascript
复制
School_ID   Year    Value
A           1998    5
B           1998    10
C           1999    15
A           2000    7
B           2005    15

每所学校都有不同年份的数据。我希望每所学校都有一条线路。

EN

回答 2

Stack Overflow用户

发布于 2012-04-27 18:54:19

这是你想要的吗?您需要group = School_id告诉ggplot2为每个学校绘制单独的线条。如果希望水平轴包含1998到2005年之间的所有年份,则在x = factor(year)中移除factor

代码语言:javascript
复制
  library(ggplot2)

df = read.table(text = "School_id Year Value 
 A           1998    5
 B           1998    10
 C           1999    15
 A           2000    7
 B           2005    15", sep = "", header = TRUE)

ggplot(data = df, aes(x = factor(Year), y = Value, color = School_id)) +       
  geom_line(aes(group = School_id)) + geom_point()
票数 16
EN

Stack Overflow用户

发布于 2012-05-02 21:29:11

base R中的plot函数不支持分组,因此您需要逐个显示您的组。GGPLOT很好地处理分组。我还建议您查看Trellis XYPLOT,它允许您绘制不同的组。

这就是如何使用网格创建基本的分组线状图:

代码语言:javascript
复制
library(lattice)
rm(list = ls())     # clear objects  
graphics.off()      # close graphics windows   

test = data.frame(x =  rep(1:3, each = 2),
                  group =  rep(c("Group 1","Group 2"),3),
                  y=   c(22,8,11,4,7,5)
                 )
xyplot(y~x,
       type="b",
       group=group,
       data=test,
       auto.key =list(
         points = FALSE, 
         columns=2,
         lines = TRUE)
)
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10349096

复制
相关文章

相似问题

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