【发布时间】:2020-05-05 10:29:20
【问题描述】:
他都是!
我是 R 世界的新手,我认为这将是一个愚蠢的错误:
我想投影一个代表我的“学习区”的栅格,添加来自rgbif 的观察结果。
首先,我使用多边形在“研究区”进行了实物观察:
wkt <- 'POLYGON((14.022120 41.583456,13.928857 41.610301,13.607180 41.789949,13.645924 42.021854,13.779864 42.029311,14.035472 41.823996,14.066175 41.751961,14.057895 41.614899,14.022120 41.583456))'
Picus_viridis <- occ_data(scientificName = "Picus viridis", geometry = wkt, return = "data", limit = 1999)
Picus_viridis<-Picus_viridis$data
其次,我上传了栅格,将其裁剪为感兴趣的扩展并分配了一个投影:
elev <- raster("data/gtopo30/gtopo30.tif")
elev_park <- crop(elev, extent(13.398953, 14.235655, 41.402820, 42.064252))
projection(elev_park) <- "+proj=longlat +datum=WGS84 +ellps=WGS84 +towgs84=0,0,0"
我尝试使用ggplot 绘制带有观察点的栅格,但 R 说有错误:
ggplot() +
geom_raster(elev_park, aes(x = x, y = y)) +
geom_point(aes(x = Picus_viridis$decimalLongitude, y = Picus_viridis$decimalLatitude))
错误:
mapping必须由aes()创建
有谁知道问题出在哪里?
光栅 GTOPO30:
> elev_park
class : RasterLayer
dimensions : 84, 112, 9408 (nrow, ncol, ncell)
resolution : 0.008333334, 0.008333334 (x, y)
extent : 13.30001, 14.23334, 41.40001, 42.10001 (xmin, xmax, ymin, ymax)
crs : NA
source : memory
names : gtopo30
values : 16, 2689 (min, max)
【问题讨论】:
-
如果你提供一个可重现的例子stackoverflow.com/questions/5963269/… 会更容易提供帮助
-
看起来您可能缺少
ggplot的data参数? -
另外,映射应该是 geom_raster 中的第一个参数。