如何绘制四线图形?

时间:2019-07-02 10:56:43

标签: r ggplot2 plot

我正在做一个眼动追踪实验,试图找出两种语言对两个不同兴趣区(AOI)上参与者的注视比例的影响。

我的自变量:语言(L1对L2),AOI(AOI1对AOI2)和时间(已划分为50个时间段)。我想绘制一条包含四条线的图形,每条线代表“ L1 AOI1”,“ L1 AOI2”,“ L2 AOI1”和“ L2 AOI2”的固定百分比。我的data.frame的示例如下:

Stimulus Bin Language  AOI     percentage
1         1     L1     AOI1      0.75
1         1     L1     AOI2      0.12
1         1     L2     AOI1      0.54
1         1     L2     AOI2      0.36
...     
10        1     L1     AOI1      0.85
10        1     L1     AOI2      0.10
10        1     L2     AOI1      0.60
10        1     L2     AOI2      0.23
...
10        7     L1     AOI1      0.64
10        7     L1     AOI2      0.14
10        7     L2     AOI1      0.66
10        7     L2     AOI2      0.21
...

我认为我不需要融合数据,对吗?因为它已经是长格式了。

我已经用facet_wrap绘制了两个图形,如下所示,但是如何获得所有这些信息的一个图形呢?

ggplot(data,aes(Bin, percentage, linetype = Language)) +`enter code here`
  facet_wrap(~ AOI)+
  stat_summary(fun.y = mean,geom = "line")+
  stat_summary(fun.data = mean_se,geom = "ribbon",
               color = NA, alpha = 0.3) +
  theme_bw(base_size = 10) +
  labs(x = "2000 ms since picture onset (50 time bins)", 
       y = "fixation proportion") +
  scale_linetype_manual(values = c("solid","dashed"))

任何想法对我都会有很大帮助。

谢谢!

1 个答案:

答案 0 :(得分:0)

facet_wrap不是您需要的功能。相反,您可以在color = AOI之外的ggplot(aes())中添加linetype = Language。它将为OAI使用不同的颜色,为Language使用不同的线型,因此同一图形上有4条不同的线。 这篇文章可能会让您感兴趣:https://stackoverflow.com/a/3777592/10580543