r - R中具有 map 和图层的ggplot2 stat_density2d的透明度和Alpha级别

标签 r ggplot2 maps visualization

谁能提供有关处理多层透明性和Alpha级别的最佳方法的建议(请引用ggplot2)?在下面的示例代码中,很难看到各个州的边界线(例如,南卡罗来纳州,北卡罗来纳州,弗吉尼亚州)-我尝试设置alpha=0.00001,但这似乎会使情况变得更糟...

library(ggplot2)

all_states = map_data("state")
set.seed(103)
df = data.frame(long=sample(-90:-70,100,T), lat=sample(30:45,100,T))
p = ggplot() + 
    geom_polygon(data=all_states, aes(x=long, y=lat, group=group), color="white", fill="grey80") + 
    stat_density2d(data=df, aes(x=long, y=lat, fill=..level.., alpha=..level..), # HELP HERE ???
                   size=2, bins=5, geom='polygon') +
    geom_point(data=df, aes(x=long, y=lat), 
               color="coral1", position=position_jitter(w=0.4,h=0.4), alpha=0.8) + 
    theme_bw()
p

最佳答案

当您将某些变量映射到alpha=中的aes()时,默认情况下,alpha值的范围为0.1到1(对于最低的映射变量值,值为0.1;对于最高的值,值为1)。您可以使用scale_alpha_continuous()更改它,并设置不同的最大和最小范围值。

ggplot() + 
  geom_polygon(data=all_states, aes(x=long, y=lat, group=group), 
               color="white", fill="grey80") + 
  stat_density2d(data=df, aes(x=long, y=lat, fill=..level.., alpha=..level..), 
                 size=2, bins=5, geom='polygon') +
  geom_point(data=df, aes(x=long, y=lat), 
             color="coral1", position=position_jitter(w=0.4,h=0.4), alpha=0.8) + 
  theme_bw()+
  scale_alpha_continuous(range=c(0.1,0.5))

关于r - R中具有 map 和图层的ggplot2 stat_density2d的透明度和Alpha级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21193138/

相关文章:

r - 无法在azure ml中安装R库

r - 尽管变量的格式合适,但仍出现以下错误 : Error: Invalid input: date_trans works with objects of class Date only

android - 如何在 Android 中使用 osmdroid map ?

java - 转换为 GeoPoint

R错误: some group is too small for 'qda'

r - 错误 : No Such Column using SQLDF

r - 从 saveRDS() 语句自动写入 readRDS() 语句

r - 图例中的颜色被覆盖

r - ggplot2的散点图按日期着色

javascript - 在我的 javascript 'class' 中调用内部函数的问题