我用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的点就是巨大的。感谢您的帮助。
以下是我的实际数据图:地图
正如Gregor恢复Monica的职务所说:
将size设置为geom_point层的aes((内的频率。删除大小=df$频率