ggplot を使用して比例面積記号をプロットするにはsqrt()
、真の比例を実現するために使用する必要があるようです。
require(ggplot2)
t <- data.frame(x=rep(c(1:5),5), y=rep(c(1:5),each=5), s=round(seq(1,100,length.out=25)))
t
p <- ggplot(data=t, aes(x=x,y=y))
# direct size-to-variable mapping
p + geom_point(aes(size=s), pch=22, fill='#0000FF75', col=NA) +
scale_size(range = c(1, 40)) +
geom_text(data=t, aes(x=x,y=y,label=s),size=3,vjust=1)
# proportional area size-to-variable mapping
p + geom_point(aes(size=sqrt(s)), pch=22, fill='#0000FF75', col=NA) +
scale_size(range = c(1, 40)) +
geom_text(data=t, aes(x=x,y=y,label=s),size=3,vjust=1)
ご覧のとおり、元のデータを表示するためにラベルが必要な場合、ラベルはルート化されています。scale_size オプションを試してみましたが、何も機能しません。誰もがこれに対する修正を知っていますか、それとも比例領域サイズマッピングを達成するためのあいまいな設定がありますか?
前もって感謝します。