Добавление более широкого разрыва в барплот для одного фактора - PullRequest
1 голос
/ 12 марта 2019

У меня есть дизайн 2x2x2x2x2 (то есть пять факторов), и я пытаюсь представить результаты на гистограмме, которую я использую facet_grid, чтобы отделить одну, и group для другой, а затем используюОсь X для остальных трех, со следующим кодом (игнорируя все темы, цвета и заголовки):

ggplot(Betas) +
  geom_bar(stat="summary", fun.y="mean", aes(x=L1L2:time:mod, y=Beta, fill=time, group=lex), colour="black", position="dodge") +
  facet_grid( ~ cohort)

Я получаю то, что в значительной степени то, что я хочу, только с большим промежутком, где этоговорит 1, чем там, где он говорит 2 (и на обеих сторонах ...):

enter image description here

Я знаю, что могу добавить width к dodge(), но это меняет ширину для всех факторов.Есть ли способ добавить более широкий разрыв только для одного фактора?

Это может быть воссоздано со следующими данными (извините, это так долго, это только одна переменная на условие ...)

Betas <- read.table(header=TRUE, text='
Beta     ROI    lang   mod lex cohort L1L2 time
0.054248 IFG    eng print wrd    HL1   L1   t1
-0.004685 IFG   eng print wrd    HL1   L1   t3
-0.039908 IFG   eng print wrd    HL1   L2   t1
0.116658 IFG    eng print wrd    HL1   L2   t3
0.054386 IFG    eng print wrd    EL1   L1   t1
0.146874 IFG    eng print wrd    EL1   L1   t3
0.289375 IFG    eng print wrd    EL1   L2   t1
0.092257 IFG    eng print wrd    EL1   L2   t3
-0.025667 IFG   eng print psd    HL1   L1   t1
-0.081104 IFG   eng print psd    HL1   L1   t3
0.237799 IFG    eng print psd    HL1   L2   t1
0.282718 IFG    eng print psd    HL1   L2   t3
0.129832 IFG    eng print psd    EL1   L1   t1
0.263594 IFG    eng print psd    EL1   L1   t3
0.185114 IFG    eng print psd    EL1   L2   t1
0.031162 IFG    eng print psd    EL1   L2   t3
0.193526 IFG    eng speech wrd    HL1   L1   t1
-0.045900 IFG   eng speech wrd    HL1   L1   t3
0.314186 IFG    eng speech wrd    HL1   L2   t1
-0.045219 IFG   eng speech wrd    HL1   L2   t3
0.066030 IFG    eng speech wrd    EL1   L1   t1
0.164552 IFG    eng speech wrd    EL1   L1   t3
0.132699 IFG    eng speech wrd    EL1   L2   t1
0.075640 IFG    eng speech wrd    EL1   L2   t3
-0.008434 IFG   eng speech psd    HL1   L1   t1
0.024765 IFG    eng speech psd    HL1   L1   t3
-0.006848 IFG   eng speech psd    HL1   L2   t1
0.069269 IFG    eng speech psd    HL1   L2   t3
0.086993 IFG    eng speech psd    EL1   L2   t1
0.266606 IFG    eng speech psd    EL1   L2   t3
0.079422 IFG    eng speech psd    EL1   L2   t1
0.059643 IFG    eng speech psd    EL1   L2   t3
0.138598 IFG    heb print wrd    HL1   L1   t1
0.153641 IFG    heb print wrd    HL1   L1   t3
0.150436 IFG    heb print wrd    HL1   L2   t1
0.115098 IFG    heb print wrd    HL1   L2   t3
0.060807 IFG    heb print wrd    EL1   L1   t1
0.057234 IFG    heb print wrd    EL1   L1   t3
0.112950 IFG    heb print wrd    EL1   L2   t1
0.100196 IFG    heb print wrd    EL1   L2   t3
0.095578 IFG    heb print psd    HL1   L1   t1
0.097042 IFG    heb print psd    HL1   L1   t3
0.104478 IFG    heb print psd    HL1   L2   t1
0.063362 IFG    heb print psd    HL1   L2   t3
0.056923 IFG    heb print psd    EL1   L1   t1
0.063754 IFG    heb print psd    EL1   L1   t3
0.036158 IFG    heb print psd    EL1   L2   t1
0.214153 IFG    heb print psd    EL1   L2   t3
0.056825 IFG    heb speech wrd    HL1   L1   t1
0.068919 IFG    heb speech wrd    HL1   L1   t3
0.031051 IFG    heb speech wrd    HL1   L2   t1
-0.004247 IFG   heb speech wrd    HL1   L2   t3
0.085609 IFG    heb speech wrd    EL1   L1   t1
0.094775 IFG    heb speech wrd    EL1   L1   t3
0.193381 IFG    heb speech wrd    EL1   L2   t1
-0.030097 IFG   heb speech wrd    EL1   L2   t3
0.055773 IFG    heb speech psd    HL1   L1   t1
0.154113 IFG    heb speech psd    HL1   L1   t3
0.111229 IFG    heb speech psd    HL1   L2   t1
0.130643 IFG    heb speech psd    HL1   L2   t3
-0.016153 IFG   heb speech psd    EL1   L2   t1
0.068519 IFG    heb speech psd    EL1   L2   t3
0.054655 IFG    heb speech psd    EL1   L2   t1
0.031119 IFG    heb speech psd    EL1   L2   t3
                   ')

1 Ответ

0 голосов
/ 12 марта 2019

Вы можете использовать что-то вроде этого -

ggplot(Betas) +
  geom_bar(stat="summary", fun.y="mean", aes(x=L1L2:time:mod, y=Beta, fill=time, group=lex), colour="black", position=position_dodge(width=0.65), width=0.5) +
  facet_grid( ~ cohort)

Вы можете изменить width параметр в position_dodge и width в зависимости от ваших потребностей.

ИЛИ

dodge <- position_dodge(width = 0.5)

ggplot(Betas) +
      geom_bar(stat="summary", fun.y="mean", aes(x=L1L2:time:mod, y=Beta, fill=time, group=lex), colour="black", position=dodge, width=0.5) +
      facet_grid( ~ cohort)
ДОБАВЛЕНО ПОЗЖЕ
ggplot(Betas) +
  geom_bar(stat="summary", fun.y="mean", aes(x=L1L2:time:mod, y=Beta, fill=time, group=lex), colour="black", position=position_dodge(width=0.65), width=0.5) +
  facet_grid( ~ cohort + L1L2, scales = "free") + theme(panel.spacing.x=unit(0.9, "lines"))

** Примечание. Я разделил L1 L2 в отдельной фазовой сетке, а затем вы можете отрегулировать ширину, изменив значение параметра panel.spacing.x.

...