【发布时间】:2015-01-02 23:08:12
【问题描述】:
我正在尝试用 ggplot2 绘制一个非常基本的地图。我找不到彩色多边形不显示的原因。似乎我的代码与我在许多教程和本网站上已经回答的问题中可以找到的代码没有什么不同。我认为这可能来自我准备数据的方式(请参阅下面的 100% 可重现示例)。
library(maptools)
library(sp)
library(ggplot2)
library(rgeos)
con <- url("http://biogeo.ucdavis.edu/data/gadm2/R/GHA_adm1.RData")
print(load(con))
close(con)
ghaDF<-as.data.frame(gadm)
ghaDF$prod <- c(12, 26, 12,22,0,11,4,5,4,4) # add values for the regions to be colored with
gadm@data$id = rownames(gadm@data) #create an id in the shapefile data
ghaMap <- fortify(gadm, region="id")
colnames(ghaDF[5])<-"id"
ghaMap <- merge(ghaMap, ghaDF)
m0 <- ggplot(data=ghaMap)
m1 <- m0 + geom_polygon(aes(x=long, y=lat, fill = prod, group=group))
+ scale_fill_gradient(low = "light green", high = "dark green")
m2 <- m1 + geom_path(aes(x=long, y=lat, group=group),color='gray')
+ coord_equal()
m2
在上图(m2 的输出)上,区域应根据ghaMap$prod 变量着色。有什么建议吗?
(R 版本 3.0.2 - 平台:x86_64-w64-mingw32/x64(64 位))
【问题讨论】:
-
+1 对于一个非常可重复的问题。不必去寻找 shapefile 是不寻常的。