在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)
但是地图上没有标出这些点。
请帮忙
存在多个问题。
zoom = 4
太小了。请使用zoom = 3
.
longitude
应映射到 x
。 latitude
应映射到 y
.
- 最好在
base_layer
参数中指定 ggplot
调用。
- 不知道这里的
fun = sum
是什么意思。
- 不确定为什么
alpha = 0.7
是 aes
参数。
这是固定代码。
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)
这是情节。
我有这个数据
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)
但是地图上没有标出这些点。 请帮忙
存在多个问题。
zoom = 4
太小了。请使用zoom = 3
.longitude
应映射到x
。latitude
应映射到y
.- 最好在
base_layer
参数中指定ggplot
调用。 - 不知道这里的
fun = sum
是什么意思。 - 不确定为什么
alpha = 0.7
是aes
参数。
这是固定代码。
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)
这是情节。