Rで解析:タイルグリッドでアメリカ合衆国のヒートマップ「minimap」パッケージ

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

タイルグリッドで州を示し、アメリカ合衆国のヒートマップを作成するパッケージです。

実行コマンドでは、指定した色をプロットする方法と、データの値を判断して付与した色をプロットする方法を紹介します。

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

スポンサーリンク

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

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

#パッケージのインストール
install.packages("devtools")
devtools::install_github("seankross/minimap")

実行コマンド

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

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

###データ例の作成#####
#パッケージ付属のssmデータから州名を抽出
data("ssm")
StateNames <- unique(ssm$State)
#&#20316;&#25104;
TestData <- data.frame(StateNames = StateNames,
                       Data = sample(1:6, 51, replace = TRUE),
                       StateColors = I(sample(c("#4b61ba", "#a87963", "#deb7a0"),
                                              51, replace = TRUE)))
########

##&#25351;&#23450;&#12375;&#12383;&#33394;&#12391;&#12503;&#12525;&#12483;&#12488;&#12377;&#12427;&#26041;&#27861;
#&#12503;&#12525;&#12483;&#12488;:miniusa&#12467;&#12510;&#12531;&#12489;
#&#21508;&#24030;&#21517;&#12487;&#12540;&#12479;:states&#12458;&#12503;&#12471;&#12519;&#12531;
#&#22615;&#12426;&#33394;:state_colors&#12458;&#12503;&#12471;&#12519;&#12531;
#&#24030;&#21517;&#12398;&#34920;&#31034;&#35373;&#23450;:state_names&#12458;&#12503;&#12471;&#12519;&#12531;
#&#24030;&#21517;&#12398;&#33394;:state_name_colors&#12458;&#12503;&#12471;&#12519;&#12531;
#&#24030;&#21517;&#12398;&#12469;&#12452;&#12474;:state_name_cex&#12458;&#12503;&#12471;&#12519;&#12531;
miniusa(states = TestData[, 1], state_colors = TestData[, 3],
        state_names = TRUE, state_name_colors = rep("white", 51),
        state_name_cex = 1)

##&#20516;&#12391;&#33394;&#12434;&#21028;&#26029;&#12375;&#12390;&#22615;&#12426;&#20998;&#12369;
#&#21028;&#26029;&#12398;function&#12434;&#20316;&#25104;
ColorJudge <- function(x){
  if(x <= 2){
    "#90736a"
    
    } else if(x >= 2 & x <= 4) {
      
      "#28231e"
    
  } else {
    
    "#4b61ba"
    }
}

#&#20966;&#29702;
DataColor <- sapply(TestData[, 2], ColorJudge)
#&#12503;&#12525;&#12483;&#12488;
miniusa(states = TestData[, 1], state_colors = DataColor,
        state_names = TRUE, state_name_colors = rep("white", 51),
        state_name_cex = 1)

#&#12459;&#12521;&#12540;&#12496;&#12540;&#12434;&#36861;&#21152;
#fields&#12497;&#12483;&#12465;&#12540;&#12472;&#12364;&#12394;&#12369;&#12428;&#12400;&#12452;&#12531;&#12473;&#12488;&#12540;&#12523;
if(!require("fields", quietly = TRUE)){
  install.packages("fields");require("fields")
}
image.plot(z = 1:5, nlevel = 6, col = c("#90736a", "#28231e", "#4b61ba"),
           legend.only = TRUE)

出力例

・指定した色でプロットする方法

miniusa

・データで色分けしてプロット

Oriminiusa

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

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