box plot 2
facet_wrap

で3グループのグラフに分けて、ボックスプロットを作った。

MMSE <- filter(Data, complete.cases(Disease), complete.cases(LBD_Subtype)) %>%
ggplot(aes(x = Disease, y = MMSE)) +
geom_boxplot(outlier.shape  =  NA) +
ggbeeswarm::geom_beeswarm(shape = 21, aes(fill = Phenotype), cex = 3.8, size = 2.3) +
theme_bw() +
labs(x = "", y = "MMSE (max = 30)") +
scale_fill_jco()+facet_wrap(~LBD_subtype)+
theme(strip.background  =  element_blank(), panel.grid.major.x = element_blank())

ggsave(file = "MMSE_LBDsubtype_dot.eps") #EPSで出力

出来上がったグラフはこんな感じ ▼

box plot 1

このグラフの並びを、左から

  1. "Brainstem Predominant"
  2. "Diffuse or Neocortical"
  3. "Transitional or Limbic"

という並びから、

  1. "Brainstem Predominant"
  2. "Transitional or Limbic"
  3. "Diffuse or Neocortical"

という並びに並び替えたい時。

 

Transformを使って並び替え

1.任意の文字列(今回は "Order")に、transform でレベルを指定する。

Order <- transform(Data, LBDsubtype = factor(LBD_Subtype, levels = c("Brainstem Predominant", "Transitional or Limbic", "Diffuse or Neocortical" )))

2.もとのデータ ("Data") の代わりに、並び替えたデータ ("order") を指定して、ボックスプロットを作る。

MMSE <- filter(Order, complete.cases(Disease), complete.cases(LBD_Subtype)) %>%
ggplot(aes(x = Disease, y = MMSE)) +
geom_boxplot(outlier.shape  =  NA) +
ggbeeswarm::geom_beeswarm(shape = 21, aes(fill = Phenotype), cex = 3.8, size = 2.3) +
theme_bw() +
labs(x = "", y = "MMSE (max = 30)") +
scale_fill_jco()+facet_wrap(~LBD_Subtype)+
theme(strip.background = element_blank(), panel.grid.major.x = element_blank())
ggsave(file="Fig3_MMSEinDisease_LBDsubtype_dot.eps") #EPSで出力

3.目的の並び順に変更できた▼

box plot 2

References

にほんブログ村 子育てブログ ワーキングマザー育児へ