使用 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 选项,但没有任何效果。任何人都知道解决这个问题,或者是否有一个模糊的设置来实现比例区域大小映射?
提前致谢。