R中的意大利面条图,重复测量

时间:2017-06-16 09:16:36

标签: r plot ggplot2 anova

我想在R中实现一个意大利面条图,以显示每个参与者的两个条件之间的差异。我计算了重复测量方差分析,其中包括因子关键性(临界,非关键)和横向(同侧,对侧)。我的数据如下所示,可在此处找到:

    string Name = txtname.Text;
   string contents = File.ReadAllText(Server.MapPath("~/Admin/invoice.html"));

            StringBuilder builder = new StringBuilder(contents);

            builder.Replace("[Name]", Name);

            StringReader sr = new StringReader(builder.ToString());

Link to data

使用以下代码,我可以绘制所有参与者的单个数据点:

    subject cond       power      laterality      criticality
1   P02   CL_CRIT       -362.7    contralateral   crit
2   P03   CL_CRIT       -186.8    contralateral   crit
3   P13   CL_CRIT       -314.6    contralateral   crit
4   P15   CL_CRIT       -353.3    contralateral   crit
5   P17   CL_CRIT       -457.8    contralateral   crit
6   P18   CL_CRIT       -219.3    contralateral   crit
7   P19   CL_CRIT       -124.0    contralateral   crit
8   P25   CL_CRIT       -329.5    contralateral   crit
9   P27   CL_CRIT       -286.9    contralateral   crit
37  P02   CL_NCRIT      -28.6     contralateral   non-critical
38  P03   CL_NCRIT      -269.3    contralateral   non-critical
39  P13   CL_NCRIT      -363.8    contralateral   non-critical
40  P15   CL_NCRIT      -255.1    contralateral   non-critical

我现在想要的是一个情节,其中,对于同侧和对侧的水平,每个参与者的关键和非关键数据点都是相互关联的。以下是我所针对的自绘样本: SAMPLE

我在互联网上搜索了一段时间,但没有找到任何解决方案。

2 个答案:

答案 0 :(得分:3)

这是一个解决方案:

df <- read.table("path/to/your/data")
df$sub_lat <- paste(df$subject, df$laterality)

ggplot(df, aes(x=critical, y=power)) + 
  geom_point(aes(group = sub_lat, color = laterality)) +
  geom_line(aes(group = sub_lat, color = laterality)) +
  xlab("critical") +
  ylab("sensorimotor_mu_nogo power")

导致这个情节: spaghetti plot

我希望这是你需要/想要的东西

答案 1 :(得分:2)

另见:

ggplot()+
  geom_line(data = df, aes(x = criticality, y = power,
                           group = subject, color = laterality))