Rで解析:視認性の高いカラーパレットの1つです。「viridis」パッケージの紹介

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

ユニバーサルかつ視認性の高いカラーパレットの確立は永遠の課題です。何か良い方法はないのでしょうか。一つの解決方法として、アニメの配色が解決策の一つではないかと考えています。

新たな提案として「viridis」パッケージが登場しました。合わせて、参考までに色覚による見え方を再現する「dichromat」パッケージを紹介します。

「viridis」サイトも合わせて確認いただければと思います。
https://cran.r-project.org/web/packages/viridis/vignettes/intro-to-viridis.html

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


スポンサーリンク

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

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

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

実行コマンド

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

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

#viridisカラーパレット:viridisコマンド
#グラデーション数:nオプション
#透明度:alphaオプション
#透明度の設定
AlphaSeq <- seq(0.2, 1, by = 0.2)
#プロットエリアの設定
par(bg = "lightgray")
plot(0:1, 0:1, type = "n", axes = FALSE, xlab = "", ylab = "")
#枠線の表示
box()
#軸の設定
xRange <- seq(0, 1, by = 1/length(AlphaSeq))
#グラフ幅の設定
xWidth <- seq(1/length(AlphaSeq), 1, by = 1/length(AlphaSeq))
for(n in seq(AlphaSeq)){
  rasterImage(as.raster(viridis(n = 256, alpha = AlphaSeq[n])),
              xRange[n], 0, xWidth[n], 1, interpolate = FALSE)
}

#以下参考 #色覚による見え方を再現
#dichromatパッケージがなければインストール
if(!require("dichromat", quietly = TRUE)){
  install.packages("dichromat");require("dichromat")
}

#1型色覚のviridisの見え方
rasterImage(as.raster(dichromat(viridis(n = 256, alpha = AlphaSeq[n]), "protan")),
            0, 0, 1, 1, interpolate = FALSE)

#2型色覚のviridisの見え方
rasterImage(as.raster(dichromat(viridis(n = 256, alpha = AlphaSeq[n]), "deutan")),
            0, 0, 1, 1, interpolate = FALSE)

#3型色覚のviridisの見え方
rasterImage(as.raster(dichromat(viridis(n = 256, alpha = AlphaSeq[n]), "tritan")),
            0, 0, 1, 1, interpolate = FALSE)

出力例

・viridisコマンド

・1型色覚でのviridisの見え方

dichromatRG

・2型色覚でのviridisの見え方

・3型色覚でのviridisの見え方

dichromatGB

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

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