ggplot2でレーダーチャートを簡単に作成するパッケージの紹介です。MACで利用するには指定するフォントのインストールが必要ですが、非常に便利なパッケージです。
なお、各データは百分率でプロットされます。詳細は実行コマンドまたはパッケージヘルプを確認ください。
パッケージバージョンは0.2。 実行コマンドはwindows 11のR version 4.1.2で確認しています。
パッケージのインストール
下記、コマンドを実行してください。
#パッケージのインストール install.packages("devtools") devtools::install_github("ricardo-bion/ggradar")
実行コマンド
詳細はコメント、パッケージのヘルプを確認してください。
また、MACで利用するために下記URLよりフォントをダウンロードしてください。ファイルをダブルクリックすることでインストールが可能です。インストール後はシステムを再起動してください。
Circular Airフォント
https://dl.dropboxusercontent.com/u/2364714/airbnb_ttf_fonts/Circular Air-Light 3.46.45 PM.ttf
#パッケージの読み込み library("ggradar") ###データ例の作成##### set.seed(1234) n <- 5 TestData <- data.frame(Group = sample(paste0("Group", 1:5), n, replace = FALSE), Data1 = runif(n, min = 0, max = 8), Data2 = sample(c(0, 1), n, replace = TRUE), Data3 = runif(n, min = 0, max = 5), Data4 = runif(n, min = 0, max = 7), Data5 = runif(n, min = 0, max = 10)) ####### #レーダーチャートをプロット:ggradarコマンド #最大値の指定:grid.maxオプション;初期値1 #例では2列目から最終列まで対象データ:max(TestData[, 2:ncol(TestData)]) #背景色を指定:background.circle.colourオプション;初期値"#D7D6D1" #背景色の透明度を指定:background.circle.transparency;初期値0.2 #線の太さを指定:group.line.widthオプション;初期値1.5 #シンボルの大きさを指定:group.point.sizeオプション;初期値6 #軸ラベルサイズの指定:axis.label.sizeオプション;初期値8 #最小円の線色を指定:gridline.min.colourオプション;初期値"grey" #中円の線色を指定:gridline.mid.colourオプション;初期値"#007A87" #最大円の線色を指定:gridline.max.colourオプション;初期値"grey" #各円の線の太さを指定:grid.line.width;初期値0.5 #線種を指定:gridline.min.linetype,gridline.mid.linetype, #gridline.max.linetypeオプション;初期値"longdash" ggradar(TestData, grid.max = max(TestData[, 2:ncol(TestData)]), background.circle.colour = "#ffdd99", background.circle.transparency = 1, group.line.width = 2, group.point.size = 6, axis.label.size = 10, gridline.min.colour = "#4b61ba", gridline.mid.colour = "#a87963", gridline.max.colour = "#e1e6ea", grid.line.width = 1.5, gridline.min.linetype = "longdash", gridline.mid.linetype = "longdash", gridline.max.linetype = "longdash") #おまけ:data.frameをグループ毎に要約する方法の一例 #データの作成 n <- 50 TestData <- data.frame(Group = sample(paste0("Group", 1:5), n, replace = TRUE), Data1 = runif(n, min = 0, max = 8), Data2 = sample(c(0, 1), n, replace = TRUE), Data3 = runif(n, min = 0, max = 5), Data4 = runif(n, min = 0, max = 2), Data5 = runif(n, min = 0, max = 10)) #内容の確認 head(TestData) Group Data1 Data2 Data3 Data4 Data5 1 Group3 2.2332498 1 3.5037407 0.03192126 4.084144 2 Group4 0.9877687 0 2.3961123 0.09892229 3.482213 3 Group5 6.3772837 1 4.2515596 1.49524757 8.345428 4 Group2 5.9542177 1 2.1116534 0.71447533 1.984000 5 Group5 7.3277938 0 0.1569606 1.51791639 8.618053 6 Group2 7.9567860 0 1.2907332 0.75191269 3.971853 #平均で要約 aggregate(TestData[, 2:ncol(TestData)], list(TestData[, 1]), mean) Group.1 Data1 Data2 Data3 Data4 Data5 1 Group1 5.422299 0.4545455 2.568613 1.0257214 4.807929 2 Group2 5.895000 0.3333333 2.503343 0.9892392 7.545210 3 Group3 3.487756 0.6923077 2.846782 1.1858549 3.980045 4 Group4 3.158220 0.4444444 1.671992 0.6342820 5.694446 5 Group5 4.676403 0.2500000 2.130129 1.3219461 5.361275
出力例
・ggradarコマンド
少しでも、あなたの解析が楽になりますように!!