我试图在R中的谷歌地图上绘制一些经度和纬度点但是我收到错误消息:
不知道如何自动为data.frame类型的对象选择比例。违约持续 错误:美学必须是长度为1或与dataProblems相同的长度:sg
这是我的R代码:
sg <- read.csv("sg.csv")
head(sg)
library(ggmap)
library(mapproj)
map <- get_map(location = 'Midway Point, Tasmania', zoom = 12)
ggmap(map)
mapPoints <- ggmap(map) +
geom_point(aes(x = lon, y = lat, data = sg, alpha = .5))
mapPoints
数据如下所示:
> head(sg)
ref lat lon
1 Male -42.80429 147.4954
2 Male -42.80367 147.4951
3 Male -42.80521 147.4919
4 Male -42.80525 147.4925
5 Male -42.80501 147.4955
6 Male -42.80414 147.4959
任何人都可以帮我吗?非常感谢你。
答案 0 :(得分:3)
阅读错误消息是值得的。我是一个非常缺乏经验的ggplot用户,并且同样适用于ggmap。错误消息显示为:Error: Aesthetics must either be length one, or the same length as the dataProblems:sg
。所以我查看了?ggmap
中的示例,并决定1)数据参数不应该在aes()
调用中,2)你需要aes
中的第三个参数,所以我选择颜色和它“工作”。
mapPoints <- ggmap(map) +
geom_point(aes(x = lon, y = lat, color=ref), data = sg, alpha = .5)
mapPoints