我有一个数据框,其中包含1980年至2018年世界各地的经度,纬度和降水。我需要在R的热图上显示平均降水。我的经度和纬度是-180至180 -50到50度,对于每个网格,它变化0.25度。我的问题是我不知道如何仅获得美国中西部的降水?
这是我的数据的头部:
long lat daily_precip_mean(mm)
1 -97.875 35.875 0.0009090909
2 -97.625 35.875 0.0000000000
3 -97.375 35.875 0.0099999994
4 -97.125 35.875 0.0090909085
5 -96.875 35.875 0.0245443763
6 -96.625 35.875 0.0353187964
这是我的代码:
# drawing a heatmap
library(ggplot2)
library(maps)
library(mapdata)
states <- map_data("state")
midwest <- subset(states, region %in% c("illinois", "iowa", "indiana", "minnesota", "missouri", "michigan", "wisconsin", "ohio"))
midwestmap = ggplot(data = midwest) +
geom_polygon(aes(x = long, y = lat, group = group), fill = "white", color = "black") +
coord_fixed(1.3)
midwestmap
midwestmap + geom_tile(aes(long, lat, fill=daily_precip_mean), data=data, alpha=0.8)+
geom_polygon(data=midwest,aes(x = long, y = lat, group = group),color = "black", fill = NA)+
scale_fill_gradientn(colours = rev(rainbow(7)))
我无法将地图放在这里,但我的地图是降水量的平方,但我只想中西部