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

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

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

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


スポンサーリンク

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

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

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

実行コマンド

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

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

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

#monochromeRパッケージでカラーパレットを作成
#https://www.karada-good.net/analyticsr/r-647/
if(!require("monochromeR", quietly = TRUE)){
  install.packages("monochromeR");require("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コマンド
PlotData + geom_quasirandom(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コマンド


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

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