Rで解析:データ可視化の色イロ表現!「squash」パッケージ

Rの解析に役に立つ記事
スポンサーリンク

データ可視化のための色設定や風変わりなヒートマップが作成できる「squash」パッケージです。2次元のプロットシンボルに出現頻度や平均などから色情報を作成・付与することで、擬似的な3次元のプロットが可能です。

本パッケージでデータを表現すると新たな発見があるかもしれません。

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

スポンサーリンク

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

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

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

実行コマンド

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

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

#####準備#####################
#データ例の作成
TestData <- data.frame(Group = sample(paste0("&#12464;&#12523;&#12540;&#12503;", 1:10), 100, replace = TRUE),
                       Data1 = sample(0:5, 100, replace = TRUE),
                       Data2 = sample(5:10, 100, replace = TRUE))
##############################

#&#25968;&#20516;&#12487;&#12540;&#12479;&#12363;&#12425;&#12459;&#12521;&#12540;&#12510;&#12483;&#12503;&#24773;&#22577;&#12434;&#20316;&#25104;:makecamp&#12467;&#12510;&#12531;&#12489;
#colFn&#12458;&#12503;&#12471;&#12519;&#12531;:rainbow2,jet,heat,coolheat,blueorange,
#bluered,darkbluered,greyscale&#12398;&#35373;&#23450;&#12364;&#21487;&#33021;
MapData <- makecmap(TestData[, 2], colFn = coolheat)

#&#12459;&#12521;&#12540;&#12510;&#12483;&#12503;&#12487;&#12540;&#12479;&#12363;&#12425;&#12459;&#12521;&#12540;&#12497;&#12524;&#12483;&#12488;&#12434;&#20316;&#25104;:cmap&#12467;&#12510;&#12531;&#12489;
ColorMap <- cmap(TestData[, 2], map = MapData)
#&#12487;&#12540;&#12479;&#12398;&#12503;&#12525;&#12483;&#12488;
plot(TestData[, 2], TestData[, 3], col = ColorMap, pch = 16, main = "&#12390;&#12377;&#12392;")
#&#12459;&#12521;&#12540;&#12461;&#12540;&#12398;&#25551;&#20889;
hkey(MapData, "&#12486;&#12473;&#12488;")

#Bin Plot:squashgram&#12467;&#12510;&#12531;&#12489;
#x,y&#12398;&#25955;&#24067;&#22259;&#12395;&#12471;&#12531;&#12508;&#12523;&#12398;&#38971;&#24230;&#12394;&#12393;&#12398;&#24773;&#22577;&#12434;z&#12391;&#25351;&#23450;
#shrink&#12458;&#12503;&#12471;&#12519;&#12531;:&#12459;&#12483;&#12488;&#12458;&#12501;&#20516;&#12434;&#25351;&#23450;
squashgram(x = TestData[, 2], y = TestData[, 3], z = TestData[, 1], FUN = mean,
           shrink = 10, main = "squashgram &#12486;&#12473;&#12488;", zlab = "Group&#12398;&#38971;&#24230;")

#&#25955;&#24067;&#22259;&#12398;&#20316;&#25104;:hist2&#12467;&#12510;&#12531;&#12489;
hist2(rnorm(100000), rnorm(100000), main = "TEST",
      xlab = "TEST1", ylab = "TEST2", zlab = "Counts")

#&#12510;&#12488;&#12522;&#12483;&#12463;&#12473;&#12363;&#12425;&#12459;&#12521;&#12540;&#12510;&#12483;&#12503;&#12398;&#20316;&#25104;:cimage&#12467;&#12510;&#12531;&#12489;
#&#12487;&#12540;&#12479;&#12398;&#20316;&#25104;
red <- green <- 0:255
rg <- outer(red, green, rgb, blue = 1, maxColorValue = 255)
#&#12503;&#12525;&#12483;&#12488;
cimage(red, green, zcol = rg)

#&#36317;&#38626;&#12487;&#12540;&#12479;&#12363;&#12425;&#12459;&#12521;&#12540;&#12510;&#12483;&#12503;&#12398;&#20316;&#25104;:distogram&#12467;&#12510;&#12531;&#12489;
#dist&#12467;&#12510;&#12531;&#12489;&#12391;&#36317;&#38626;&#12434;&#35336;&#31639;
DiData <- dist(head(TestData[, 2:3], 15), method = "euclidean")
#&#12503;&#12525;&#12483;&#12488;
distogram(DiData, title = "Distance (km)", n = 15) 

出力例

・makecamp,cmapコマンド

makecampcmap

・squashgramコマンド
 シンボルに与える情報で、シンボルサイズが変わります。

squashgram

・hist2コマンド

hist2

・cimageコマンド

cimage

・distogramコマンド

distogram

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

タイトルとURLをコピーしました