散布図は、多くの点が重なっていると解釈が難しくなる可能性があります。重なっていると、特定の領域のデータの密度がわかりにくくなるからです。1 つの解決策は、プロットされたポイントに半透明の色を使用することです。これにより、不透明な領域は、それらの座標に多くの観測が存在することを示します。
以下は、R での白黒ソリューションの例です。
MyGray <- rgb(t(col2rgb("black")), alpha=50, maxColorValue=255)
x1 <- rnorm(n=1E3, sd=2)
x2 <- x1*1.2 + rnorm(n=1E3, sd=2)
dev.new(width=3.5, height=5)
par(mfrow=c(2,1), mar=c(2.5,2.5,0.5,0.5), ps=10, cex=1.15)
plot(x1, x2, ylab="", xlab="", pch=20, col=MyGray)
plot(x1, x2, ylab="", xlab="", pch=20, col="black")
しかし、最近、PNAS でこの記事に出くわしました。これは同様のアプローチをとっていましたが、重なり合っているポイントの数の指標として、不透明度ではなくヒートマップの配色を使用していました。この記事はオープン アクセスなので、誰でも .pdf をダウンロードして、作成したいグラフの関連例を含む図 1 を見ることができます。この論文の方法のセクションは、分析がMatlabで行われたことを示しています。
便宜上、上記の記事の図 1 の一部を次に示します。
ポイント密度の指標として不透明度ではなく色を使用する R で散布図を作成するにはどうすればよいですか?
install.packages("fields")
まず、R ユーザーは関数 を使用して、ライブラリ内のこの Matlab 配色にアクセスできますtim.colors()
。
上記の記事の図 1 に似た図を R で簡単に作成する方法はありますか? ありがとう!