Rで解析:ggplot2でbeeswarmプロット「geom_beeswarm」パッケージ


投稿日: Rの解析に役に立つ記事

データの分布を確認するのに便利なbeeswarmプロットをggplot2で描写するパッケージの紹介です。

パッケージバージョンは0.6.0。windows11のR version 4.1.2で確認しています。


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

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

#パッケージのインストール
install.packages("ggbeeswarm")

実行コマンド

詳細はコメント、パッケージのヘルプを確認してください。

#パッケージの読み込み
library("ggbeeswarm")

###データ例の作成#####
#tidyverseパッケージを読み込み
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
  install.packages("tidyverse");require("tidyverse")
}

#monochromeRパッケージでカラーパレットを作成
#https://www.karada-good.net/analyticsr/r-647/
library("monochromeR")

ColPalette <- factor(generate_palette(colour = "#deb7a0",
                                      modification = "go_lighter",
                                      n_colours = 5, view_palette = FALSE))
#データ例の作成
n <- 300
TestData <- tibble(Group = sample(paste0("Group", 1:5),
                                  n, replace = TRUE),
                   Data = rnorm(n)) %>%
  mutate(Color = case_when(Group == "Group1" ~ ColPalette[1],
                           Group == "Group2" ~ ColPalette[2],
                           Group == "Group3" ~ ColPalette[3],
                           Group == "Group4" ~ ColPalette[4],
                           Group == "Group5" ~ ColPalette[5]))
########

####### #プロット雛形を作成
PlotData <- ggplot(TestData, aes(x = Group, y = Data,
                                 color = Color))

#Beeswarmプロット:geom_quasirandomコマンド
#Tukey texturingで点の重なりを回避
PlotData + geom_quasirandom(dodge.width = 0.7,
                            cex = 2) +
  theme_dark() + scale_colour_identity()

#Beeswarmプロット:geom_beeswarmコマンド
#点の配置方法を指定:priorityオプション;
#"ascending","descending","density","random","none"
PlotData + geom_beeswarm(dodge.width = 0.7,
                         priority = "density",
                         cex = 2) +
  theme_dark() + scale_colour_identity()

出力例

・geom_quasirandomコマンド

・geom_beeswarmコマンド


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

スポンサードリンク

関連コンテンツ


スポンサードリンク