我制作了一个带有ggplot的地图,该地图绘制了一个国家的各种经度和纬度点。我希望点的大小与我的数据框中的频率列相对应。我的数据框看起来像这样:
Longitude Latitude Frequency
5.012392 52.09544 4
5.196948 52.30847 4
5.196945 52.1223 6
5.196945 52.30846 1
6.180394 53.19633 3
5.233904 52.42395 87
这是我的代码,用于创建地图并在ggplot中绘制点:
ggplot() +
geom_polygon(data=Neth, aes(long,lat,group=group), fill="whitesmoke")+
geom_path(data=Neth, aes(long,lat, group=group), color="black",
size=0.2) +
geom_point(data=df,
aes(x=Longitude, y=Latitude, label = Frequency), colour="red", fill = "pink", pch=21, size=df$Frequency, alpha=I(0.5)) + scale_size(range = c(1,6))
“ Neth”是我下载的GADM地图。当我添加scale_size函数时,没有任何变化,例如,频率为87的点很大。任何帮助表示赞赏。
这是我的图和实际数据的样子:map plot
正如格雷戈尔-恢复莫妮卡-说:
放置大小= geom_point图层在aes()内部的频率。删除大小= df $频率