Rで解析:散布図で円グラフ「scatterpie」パッケージ


「ggplot2」パッケージで散布図を円グラフを表示するパッケージの紹介です。非常に面白い表現だと思います。

パッケージバージョンは0.1.7。実行コマンドはwindows 11のR version 4.1.2で確認しています。

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

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

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

実行コマンド

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

###データ例の作成#####
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
  install.packages("tidyverse");require("tidyverse")
}
set.seed(1234)
n <- 10
TestData <- tibble(Group = sample(paste0("Group", 1:4), n,
                                  replace = TRUE),
                   #x軸の座標
                   X_Point_Data = sample(c(1:30),
                                       n, replace = TRUE),
                   #y軸の座標
                   Y_Point_Data = sample(c(51:100), n, replace = TRUE),
                   #円グラフデータ_1
                   YES_Value_Data = sample(c(1:5), n, replace = TRUE),
                   #円グラフデータ_2
                   NO_Value_Data = sample(c(1:5), n, replace = TRUE),
                   #円の大きさ
                   Radius = sample(c(5:100), n, replace = TRUE)/30)
########

#散布図のシンボルを円グラフで描写:geom_scatterpieコマンド
#円グラフの大きさを指定:aes(r = "数値")で設定
#データを指定:colsオプション;列名で指定
#グラフ塗色の変更はscale_fill_manualコマンドを利用
ggplot() +
  geom_scatterpie(data = TestData,
                  aes(x = X_Point_Data, y = Y_Point_Data, r = Radius),
                  cols = c("YES_Value_Data", "NO_Value_Data"),
                  alpha = 1.0) +
  scale_fill_manual(values = c("#fef0e7", "#5c463e"))

#グラフに凡例を追加:geom_scatterpie_legendコマンド
#円グラフの凡例大きさを指定:radiusオプション
#分割数を指定:nオプション
#y軸ラベルが[ラベル名 + r]となる,labsコマンドで修正可能
ggplot() +
  geom_scatterpie(data = TestData,
                  aes(x = X_Point_Data, y = Y_Point_Data, r = Radius),
                  cols = c("YES_Value_Data", "NO_Value_Data"),
                  alpha = 1.0) +
  scale_fill_manual(values = c("#fef0e7", "#5c463e")) +
  #geom_scatterpie_legendコマンド
  geom_scatterpie_legend(radius = TestData$Radius, x = 0, y = 45, n = 5) +
  #y軸ラベルを調整
  labs(y = "TEST")

出力例

・geom_scatterpieコマンド

・geom_scatterpie_legendコマンド


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

スポンサードリンク

スポンサードリンク