在r中的ggmap中映射分类变量

mapping categorical variable in ggmap in r

我有这个数据

Zip    incidentType        city state latitude longitude
1 00660           Flood Hormigueros    PR 18.13911 -67.12085
2 00660 Severe Storm(s) Hormigueros    PR 18.13911 -67.12085
3 00660 Severe Storm(s) Hormigueros    PR 18.13911 -67.12085
4 00660           Flood Hormigueros    PR 18.13911 -67.12085
5 00660           Flood Hormigueros    PR 18.13911 -67.12085
6 01255           Flood Sandisfield    MA 42.08897 -73.12444

我想制作一个热图来绘制事件变量,这是一个具有不同级别的因素,代码如下

library(ggmap)

map <- get_map(location = "United States",zoom = 4,maptype = "terrain",
               color = "color",source = "google")

ggmap(map,extent = "device") + geom_point(aes(x=latitude,y=longitude,
                         alpha=0.7,fill=incidentType,
                        col=incidentType),fun=sum,
                        data = dat1,na.rm = TRUE)

但是地图上没有标出这些点。 请帮忙

存在多个问题。

  1. zoom = 4 太小了。请使用zoom = 3.
  2. longitude 应映射到 xlatitude 应映射到 y.
  3. 最好在 base_layer 参数中指定 ggplot 调用。
  4. 不知道这里的 fun = sum 是什么意思。
  5. 不确定为什么 alpha = 0.7aes 参数。

这是固定代码。

dat <- read.table(text = "Zip    incidentType        city state latitude longitude
1 00660           Flood Hormigueros    PR 18.13911 -67.12085
2 00660 'Severe Storm(s)' Hormigueros    PR 18.13911 -67.12085
3 00660 'Severe Storm(s)' Hormigueros    PR 18.13911 -67.12085
4 00660           Flood Hormigueros    PR 18.13911 -67.12085
5 00660           Flood Hormigueros    PR 18.13911 -67.12085
6 01255           Flood Sandisfield    MA 42.08897 -73.12444",
                  header = TRUE, stringsAsFactors = FALSE)

library(ggmap)

map <- get_map(location = "United States",zoom = 3,maptype = "terrain",
               color = "color",source = "google")

ggmap(map, 
      base_layer = ggplot(data = dat, aes(x = longitude, y = latitude))) + 
  geom_point(aes(fill = incidentType, col = incidentType), alpha = 0.7, size = 2)

这是情节。