Rで解析:データの分布を確認!ビースウォームプロット「beeswarm」パッケージ

Rの解析に役に立つ記事
スポンサーリンク

ビースウォームプロットはデータの分布を確認することができる表現方法です。似た表現方法にはboxplotなどがあります。boxplotに点をプロットしても良いですが、手軽にビースウォームを利用できる「beeswarm」パッケージを紹介します。

「beeswarm」パッケージではビースウォームプロットに中央値、75%、25%のラインを書き込めるbxplotコマンドもあります。なお、紹介するパッケージのバージョンは0.2.0です。

スポンサーリンク

パッケージのインストール

下記コマンドを実行してください。

install.packages("beeswarm")

コマンドのオプション

beeswarmコマンドのオプション

オプション内容
fomulaY軸データ配列~グループ配列で指定
datafomula使用時にdataを指定するのに使用
na.action欠損値の処理。初期値はNULL
xfomulaとは同時に使用しない。配列、データフレーム、リストが使用できる
methodプロット方法の設定。"swarm", "center", "hex", "square"が設定可能
vertical, horizontalプロット方向の垂直 or 水平を指定。初期値はvertical = TRUE, horizontal = !vertical
cexシンボルの大きさ。初期値は1
spacing シンボル間の隙間。初期値は1
labelsデータ行名以外を指定する場合に使用
corralシンボルの重なり方法を指定。"none", "gutter", "wrap", "random", "omit"が設定可能
pch, col, bgシンボル、色、塗りつぶしの色を指定
sideシンボルの並び方を指定。初期値は左右。-1で左方向。1で右方向
prioritymethodを"swarm"に設定した時にシンボルをプロットする順序。"ascending", "descending", "density", "random", "none"が設定可能

bxplotコマンドのオプション

オプション内容
fomulaY軸データ配列~グループ配列で指定
datafomula使用時にdataを指定するのに使用
na.action欠損値の処理。初期値はNULL
xfomulaとは同時に使用しない。配列、データフレーム、リストが使用できる
vertical, horizontalプロット方向の垂直 or 水平を指定。初期値はvertical = TRUE, horizontal = !vertical
addプロットの重ね書きを指定。初期値はFALSE
col, lty, lwd線の色、種類、太さを指定
width線の長さを指定、初期値は0.75

実行コマンドの紹介

詳細はコマンド内の詳細を確認ください。

library("beeswarm")

#データ例を作成
TestData <- data.frame(Group = rep(paste("テスト", 1:5, sep = ""), 20),
                          FrequenceOne = runif(100, min = -3, max = 3),
                          FrequenceTwo = rnorm(100))

#fomulaを使用したプロット
beeswarm(TestData[, 2] ~ Group, TestData, col = rainbow(6), pch = 17,
         method = "center", corral = "wrap")

#fomulaを使用しないプロット
beeswarm(TestData[, 2:3], bg = "#00000050",
         method = "swarm", corral = "omit",
         priority = "descending", side = 0,
         col = c("red", "blue"), pch = 25)

#fomulaを使用しないプロットに中央値、75%、25%のラインを追加
beeswarm(TestData[, 2:3], bg = "#00000050",
         method = "swarm", corral = "omit",
         priority = "descending", side = 0,
         col = c("red", "blue"), pch = 25)
bxplot(TestData[, 2:3], col = "brown", lty = 2, 
       lwd = 3, width = 0.5, add = TRUE)

出力例

fomulaを使用したプロット

Rplot01

fomulaを使用しないプロット

Rplot2

fomulaを使用しないプロットに中央値、75%、25%のラインを追加

Rplot3

少しでも、あなたの解析が楽になりますように!!

タイトルとURLをコピーしました