本文へスキップ
からだにいいもの

Rのトピックスを中心に『まだ、まだ、知らない、役に立つ情報?』を発信します。

Rで解析:関係性を表現!サークルプロットを作成「circleplot」パッケージ

関係性を表現するのにヒートマップや散布図などがありますが、サークルプロットもオススメです。サークルプロットは円周に変数を並べ変数間の関係性を線の太さや色で表現する手法です。

パッケージバージョンは0.4.1。実行コマンドはR version 4.2.2で確認しています。

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

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

#パッケージのインストール
install.packages("devtools")
devtools::install_github("mjwestgate/circleplot")
スポンサーリンク

実行コマンド

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

#パッケージの読み込み
library("circleplot")
#install.packages("amap")
library("amap")

###データ例の作成#####
n <- 10
TestData <- data.frame(Data1 = sample(1:100, n, replace = TRUE),
                       Data2 = sample(1:100, n, replace = TRUE),
                       Data3 = sample(1:100, n, replace = TRUE),
                       Data4 = sample(1:100, n, replace = TRUE),
                       Data5 = sample(1:100, n, replace = TRUE),
                       Data6 = sample(300:400, n, replace = TRUE),
                       Data7 = sample(1:100, n, replace = TRUE),
                       Data8 = sample(1:100, n, replace = TRUE),
                       Data9 = sample(300:400, n, replace = TRUE),
                       Data10 = sample(1:100, n, replace = TRUE))
########

#amapパッケージのDistコマンドで類似度を算出
DistResult <- Dist(TestData, method = "spearman")

#グラフラベルのデータを付与
attr(DistResult, "Labels") <- colnames(TestData)

#scalesパッケージで色を設定
library("scales")
x <- seq(0, 1, length = 9)
ColPal <- seq_gradient_pal(c("#e1e6ea", "#505457", "#4b61ba", "#a87963",
                                      "#d9bb9c", "#756c6d"))(x)

#サークルプロットを描写:circleplotコマンド
#表示スタイルの設定:styleオプション;"classic","pie","clock"が指定可能
#プロット体裁の調整:plot.controlオプション;内容はlistで指定
#plot.rotation,plot,par,point,point.labels,line.gradient,line.breaks
#line.cols,line.widths,arrows,na.controlなどの指定が可能
circleplot(DistResult, style = "classic",
           plot.control = list(line.cols = ColPal,
                               line.widths = seq(1, 10, by = 1)[1:9]))

出力例

circleplot

少しでも、あなたのウェブや実験の解析が楽になりますように!!

スポンサーリンク
Prices and shipping availability may change. Please refer to the product page at time of purchase.
Content displayed on this site is provided by Amazon and may be updated or removed.
Amazon Associate, karada-good earns income through qualifying sales.