R中的相互作用图

时间:2014-08-25 02:54:43

标签: r plot ggplot2 interaction

我想从以下数据集中获取:

ID  Result Days Position   
1   70     0    1     
1   80     23   1
2   90     15   2
2   89     30   2
2   99     40   2
3   23     24   1
etc...

制作2个意大利面条图:1表示位置1,1表示位置2.我尝试了“for& if”循环,但我只是多次混合情节。我也在使用ggplot

dfPr <- df[df$Progress==1]
 x11()
 ggplot(dfPr, aes(x=OrderToFirstBx, y=result.num, color=factor(MRN))) +
 geom_line() + theme_bw() + xlab("Time in Days") + ylab("ALT")

这很有效!但如果您有其他解决方案,请告诉我。

谢谢。

1 个答案:

答案 0 :(得分:1)

您提供了有限的示例数据,您的示例代码似乎与示例数据中的变量名称不匹配,因此很难准确说出您想要的内容。

如果你想要两个单独的图,使用facet可能是最简单的。尝试

#sample data
dfPr <- structure(list(ID = c(1L, 1L, 2L, 2L, 2L, 3L), Result = c(70L, 
80L, 90L, 89L, 99L, 23L), Days = c(0L, 23L, 15L, 30L, 40L, 24L
), Position = c(1L, 1L, 2L, 2L, 2L, 1L)), .Names = c("ID", "Result", 
"Days", "Position"), class = "data.frame", row.names = c(NA, 
-6L))

ggplot(dfPr, aes(x=Days, y=Result, group=ID)) + 
    geom_line() + facet_wrap(~Position)