我正在尝试为R中的ggmap包生成的绘图添加图例。我正在使用的数据集是
Latitude Longitude amount
61.37072 -152.40442 436774
32.80667 -86.79113 3921030
34.96970 -92.37312 1115087
33.72976 -111.43122 5068957
我正在使用的代码是
library(ggplot2)
library(ggmap)
MyMap <- get_map(location = c(lon = -96.5, lat = 40.68925), zoom = 4,maptype = "terrain", scale = 2)
ggmap(MyMap)+
geom_point(data = data,aes(x = Longitude , y = Latitude ),size=sqrt(data$amount)/800,col='darkred', shape = 19,alpha = .5)
现在我想在这个情节中添加图例。图例应显示地图上圆圈的大小对应一定数量。我该怎么做?
答案 0 :(得分:3)
size
参数应包含在aes()
函数的geom_point
部分中,如下所示:
plot <- ggmap(MyMap) +
geom_point(data = data,aes(x = Longitude , y = Latitude, size=amount), col='darkred', shape = 19,alpha = .5)
plot
如果您想进一步自定义比例,可以使用可选参数scale_size_area()
为图例选择breaks and labels。例如:
plot + scale_size_area(breaks = c(436774, 1115087, 4000000, 5068957),
labels = c("436774", "1115087", "4000000", "5068957"))
更改磅值:
如果你想调整点的大小,最好使用scale_size
功能,它可以让你指定一个范围:
plot + scale_size(range = c(5,9))