Rで解析:色々な円グラフを作成しませんか?「ggpie」パッケージ


カテゴリ変数を対象に1変数のグラフだけでなく、2変数を使用して2重グラフの作成が可能なパッケージの紹介です。グラフは単純な円グラフ、ドーナツグラフ、ローズグラフ、3D円グラフの作成が可能です。

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

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

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

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

実行コマンド

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

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

###データ例の作成#####
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
  install.packages("tidyverse");require("tidyverse")
}
set.seed(1234)
n <- 30
TestData <- tibble(Group = sample(paste0("Group", 1:4), n,
                                  replace = TRUE),
                   Chr_Data = sample(c("か", "ら", "だ", "に",
                                       "い", "い", "も", "の"),
                                       n, replace = TRUE),
                   Fct_Data = factor(sample(c("か", "ら", "だ", "に",
                                              "い", "い", "も", "の"),
                                            n, replace = TRUE)))
########                   

#カテゴリ変数の円グラフを作成:ggpieコマンド
#データを指定:group_keyオプション
#データの種類を指定:count_typeオプション;
#集計データ:"count",未集計データ: "full"
#ラベル表示:label_typeオプション;"circle","horizon","none"
#ラベル位置:label_posオプション;円内;"in",円外;"out"
#ラベル内容:label_infoオプション;"count","ratio","all"
#指定パーセント内のラベルを円外に表示:labal_thresholdオプション;
#label_posオプション:"in"で効果を発揮
ggpie(data = TestData, group_key = "Group",
      count_type =  "full", label_type = "horizon",
      label_pos = "in", label_info = "all",
      label_size = 4, label_color = "black",
      labal_threshold = 20)

#2つのカテゴリ変数の円グラフを作成:ggnestedpieコマンド
#オプションはggpieコマンド先頭にinner_/outer_で利用可能
#内円グラフの厚さを指定:inner_thickオプション
#外円グラフの厚さを指定:outer_thickオプション
ggnestedpie(data = TestData, inner_thick = 0.8, outer_thick = 0.8,
            group_key = c("Group", "Fct_Data"), count_type =  "full",
            inner_label_info = "all", inner_label_split = NULL,
            inner_label_size = 3, inner_labal_threshold = NULL,
            outer_label_info = "all", outer_labal_threshold = 20,
            outer_label_type = "horizon", outer_label_pos = "in")

#2つのカテゴリ変数でグループ毎の扇状グラフを作成:ggrosepieコマンド
#軸目盛を表示:show_tickオプション;TRUE/FALSE
#中心円の大きさ:donut_fracオプション
ggrosepie(data = TestData, group_key = c("Group", "Fct_Data"),
          count_type = "full", label_info = "all",
          show_tick = TRUE, donut_frac = 0.3,
          donut_label_size = 5)

#1カテゴリ変数のドーナツグラフを作成:ggdonutコマンド
#オプションはggpieコマンドを参照
ggdonut(data = TestData, group_key = "Group",
        count_type =  "full", label_type = "horizon",
        label_pos = "in", label_info = "all",
        label_size = 4, label_color = "black",
        labal_threshold = 20)

#1カテゴリ変数の3D円グラフを作成:ggpie3Dコマンド
#影の濃度:darkenオプション;1:0
#傾きを調整:tilt_degreesオプション
ggpie3D(data = TestData, group_key = "Group",
        count_type =  "full", label_info = "all",
        label_size = 4, darken = 0.5, tilt_degrees = -5)

出力例

・ggpieコマンド

・ggnestedpieコマンド

・ggrosepieコマンド

・ggdonutコマンド

・ggpie3Dコマンド


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

スポンサードリンク

スポンサードリンク