web-dev-qa-db-ja.com

すべてのポイントに一度にggplotアルファ(透明度)値を設定する方法

library(data.table)
library(ggpolot2)

numPoints <- 10000
dt <- data.table(a=rnorm(numPoints),b=rnorm(numPoints))

qplot(a,b,data=dt, geom="point", alpha=1)
qplot(a,b,data=dt, geom="point", alpha=0.1)
qplot(a,b,data=dt, geom="point", alpha=0.01)

選択したアルファ値に関係なく、結果のチャートは同じ量の透明度を持っているようです。

(エリア内のポイントの密度がより明確に見えるように)ポイントをより透明にするにはどうすればよいですか?

18
Rob Donnelly

なぜなら ... is 各レイヤーに渡される他の美学、つまりalphaを設定せずに、すべての値で同じ値にマッピングします。プロット上のalphaの凡例エントリをどのように取得するかで判断できます。 2つの解決策があります。

1)Iを使用して、これがセットの美学であることを示します。

qplot(a,b,data=dt, geom="point", alpha=I(0.1) )

2)代わりにggplotを使用し、geom...に美学を設定します.

ggplot( dt , aes( a , b ) )+
  geom_point( alpha = 0.1 )

enter image description here 両方の呼び出しで同じ結果が生成されます。

39
Simon O'Hanlon