2017-08-29 120 views
0

我想两个观测之间绘制多张行,就像这里的例子:Stripcharts绘制多行与GGPLOT2 R中

example chart

这里是我的数据的一个例子。帧称为 “SURP”:

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轴)的线,如上面所示的示例一样。

+0

请你发布你的数据使用'dput'功能?只需轻松粘贴你的R控制台'dput(surp)'并复制输出。 –

+0

哪里是指示哪些案件连接在一起的变量?即你需要一个适当的'group'变量。 – Henrik

+0

Thanks @Henrik,你是对的 - 我意识到我的团体变量是针对整个团体的,而且,因为geom_line会根据团体美学连接点,所以我需要根据个人参与者指定团体变量,而不是团体 –

回答

0

情节在你的数据帧(BDD & HC)只有两个原因只有两组线...

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

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

谢谢!我最终不得不在我的数据框中添加第三列与参与者ID(标记为'参与者'),我能够使用下面的代码完全按照我想要的方式工作:'ggplot(mydat,aes(drug,data, group = participant,color = group))+ geom_point()+ geom_line()+ facet_wrap(〜group)'' –