Jittering plotを用いたデータの可視化

例として、以下のような箱ひげ図、Violin plotがあったとする。

par(mfrow=c(1,3))
boxplot(x)
boxplot(x,notch=TRUE)
vioplot(x,col=0)


すぐ気付くことではあるが、普通の箱ひげ図だと
中央から四分位点までの広がりが大き過ぎる。
分布が単峰性かどうかなど、
「まずはヒストグラムを書く」ことの重要性がよく分かる。

Violin plotでは分布がある程度分かるが、
それでも、限界がある。
特に、データ数が少ない場合には、Jittering / Jittered plotを
描くのは優れた方法と考えられる。

x <- c(rnorm(25,25),rnorm(25,10)) #データは二つの正規分布から生成
plot(x ~ jitter(rep(1,50),3),xlim=c(0.5,1.5),cex=0.5)

具体的には、以下のような場合に威力を発揮する。

x <- c(rnorm(25,25),rnorm(25,10),rnorm(25,50)) #データは三つの正規分布から生成
par(mfrow=c(1,2))
vioplot(x,col=0) #Violin plotだと壺型になってよく分からない
plot(x ~ jitter(rep(1,75),3),xlim=c(0.5,1.5),cex=0.5)

調査不足で、日本語での名前が調べられていないが、
Jittering plot / Jittered plotなどと検索すると
英語の情報は引っかかってくる。

最近は、これらまで考慮した
pirateplot()がyarrrに入っているので、便利。

library(yarrr)
pirateplot(y ~ x, data = dat)