【问题标题】:Stripcharts of linked observations/ Plotting multiple lines with ggplot2 in R [duplicate]链接观察的条形图/在 R 中使用 ggplot2 绘制多条线 [重复]
【发布时间】:2017-08-29 06:57:11
【问题描述】:

我正在尝试在两个成对观察之间绘制多条线,就像这里的示例:

example chart

这是我的名为“surp”的data.frame的示例:

group   drug    data
BDD A   -1.1526
BDD A   -0.2916
BDD A   1.1954
BDD A   0.24379
BDD A   1.0958
BDD A   -0.45312
BDD B   0.42097
BDD B   -0.94172
BDD B   3.3395
BDD B   1.301
BDD B   0.25607
BDD B   0.32317
BDD B   2.621
HC  A   0.4826
HC  A   -0.57789
HC  A   2.4146
HC  A   0.13586
HC  A   0.9254
HC  A   0.41183
HC  A   -0.25771
HC  A   0.75699
HC  A   -0.86372
HC  A   1.2142
HC  A   0.33452
HC  A   -0.089335
HC  B   -3.048
HC  B   -0.19295
HC  B   0.43324
HC  B   -1.3974
HC  B   -1.4349
HC  B   2.2073
HC  B   0.71036
HC  B   -0.1725
HC  B   0.36907

这是我的示例代码:

ggplot(data = surp, aes(x = drug, y = data, group = group, colour =factor(group))) +
  geom_point()+
  geom_line(aes(group = drug)) 

但是,该代码仅绘制两条垂直线,而不是连接 A 和 B(x 轴)之间的每个数据点的线,就像我在上面附加的示例一样。

【问题讨论】:

  • 能否请您使用dput 函数发布您的数据?只需轻松粘贴到您的R 控制台dput(surp) 并复制输出。
  • 指示哪些案例连接在一起的变量在哪里? IE。你需要一个合适的group 变量。
  • 谢谢@Henrik,你是对的——我意识到我的组变量是针对整个组的,并且由于 geom_line 将根据组美学连接点,我需要根据指定组变量个人参与者,而不是团体

标签: r plot ggplot2 linegraph


【解决方案1】:

由于您的数据框中只有两个组(BDD 和 HC),因此该图只有两条线...

我认为你应该使用类似的东西:

ggplot(data = surp, aes(x = drug, y = data, colour =factor(group))) +
  geom_point()+geom_line() + facet_wrap(~group)

【讨论】:

  • 谢谢!!我最终不得不使用参与者 ID(标记为“参与者”)将第三列添加到我的数据框中,并且我能够使用以下代码使其完全按照我想要的方式工作:ggplot(mydat, aes(drug, data, group = participant, colour = group)) + geom_point() + geom_line() + facet_wrap(~group)
猜你喜欢
  • 2023-03-22
  • 1970-01-01
  • 2017-09-27
  • 1970-01-01
  • 2014-04-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-20
相关资源
最近更新 更多