頂点、辺のグラフを簡単に作成できるパッケージの紹介です。「ggplot2」パッケージのコマンドを適応できるので柔軟にグラフを作成できます。「facet_grid」コマンドなどが適応可能です。
パッケージバージョンは0.2.1。実行コマンドはwindows 11のR version 4.1.3で確認しています。
パッケージのインストール
下記コマンドを実行してください。
#パッケージのインストール
install.packages("ggpolar")
実行コマンド
詳細はコマンド、各パッケージのヘルプを確認してください。
#パッケージの読み込み
library("ggpolar")
###データ例の作成#####
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
install.packages("tidyverse");require("tidyverse")
}
set.seed(1234)
n <- 16
#開始グループデータ
From <- sample(paste0("Group_", str_pad(1:8, 2, pad = 0)),
n, replace = TRUE)
#終了グループデータ
To <- NULL
for(i in seq(From)){
ToVec <- sample(From[-which(From %in% From[i])], 1)
To <- c(To, ToVec)
}
#シンボルサイズデータ
Size <- NULL
SizeTable <- as_tibble(table(To)) %>%
rename(SizeTo = To)
for(i in seq(From)){
SizeTo <- SizeTable %>%
filter(SizeTo == From[i]) %>%
select(n) %>% as.numeric() %>%
replace_na(1)
Size <- c(Size, SizeTo)
}
#エッジデータ
Edge <- sample(c("Increase", "Decrease"), length(From), replace = TRUE)
#データ作成
TestData <- tibble(From, To, Size, Edge)
########
#座標系でドットをプロット:polar_initコマンド
#基準となるデータ列を指定:xオプション
#その他,ggplot2::geom_pointのオプションが使用可能
polar_init(data = TestData, x = From,
aes(size = Size, color = Edge,
shape = Edge)) -> TestPolar
#確認
TestPolar
#polar_initコマンドで作成したドットに線を付与:polar_connectコマンド
#2点間のデータ列を指定:x1,x2オプション
#その他,ggplot2::geom_segmentのオプションが使用可能
TestPolar +
polar_connect(TestData, x1 = From, x2 = To,
size = Size, color = Edge,
linetype = Edge, alpha = 0.3) -> PlotPolar
#確認
PlotPolar
#参考:scale_color_manualコマンドやfacet_gridコマンドなどの適応が可能です
PlotPolar +
scale_color_manual(values = c("darkgreen", "magenta")) +
facet_grid(~Edge)
出力例
・polar_initコマンド

・polar_connectコマンド

・参考:scale_color_manualコマンドやfacet_gridコマンドなどの適応が可能です

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