单个ggplot2中有多条数据线

笑脸

我想在单个ggplot中绘制多条线,其中每条线代表给定两个或多个参数的x和y之间的关系。

我知道如何针对一个参数执行此操作:

采取以下示例数据:

library(ggplot2)
library(reshape2)

rs = data.frame(seq(200, 1000, by=200), 
                runif(5), 
                runif(5), 
                rbinom(n = 5, size = 1, prob = 0.5)) 
names(rs) = c("x_", "var1", "var2", "par")

melted = melt(rs, id.vars="x_")

ggplot(data = melted, 
       aes(x = x_, y = value, group = variable, col = variable)) + 
  geom_point() + 
  geom_line(linetype = "dashed")

这将绘制三条线,一条用于var1,一条用于var2,另一条用于par。

当前

但是,我想要四行:一是给定par = 0var1,另一行是给定par = 1的var1,然后对于var2同样。

例如,如果我希望条件是多个参数的组合(例如,par2 + par),它将如何扩展?

乔治

您需要调整合并功能,并添加同时包含par和var详细信息的group列。我想以下是您想要的?

library(reshape)
library(ggplot2)
rs = data.frame(seq(200, 1000, by=200), runif(5), runif(5), rbinom(n = 5, size = 1, prob = 0.5))
names(rs)=c("x_", "var1", "var2", "par")

melted = melt(rs, id.vars=c("x_", "par"))
melted$group <- paste(melted$par, melted$variable)

ggplot(data=melted, aes(x=x_, y=value, group =group, col=group))+ geom_point() + geom_line(linetype = "dashed")

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章