R 选择打印的主地图的一部分
我已经实现了一个代码,它在地图上绘制了北波瓦特人的物种遭遇率,同时只显示了地图一小部分的数据。然而,绘制的地图显示了整个区域,在本例中为北美,我只希望显示带有数据的区域 以下是我创建地图的代码:R 选择打印的主地图的一部分,r,raster,R,Raster,我已经实现了一个代码,它在地图上绘制了北波瓦特人的物种遭遇率,同时只显示了地图一小部分的数据。然而,绘制的地图显示了整个区域,在本例中为北美,我只希望显示带有数据的区域 以下是我创建地图的代码: r_pred_proj <- projectRaster(r_pred, crs = map_proj$proj4string, method = "ngb") par(mar = c(3.5, 0.25, 0.25, 0.25)) # set up plot area pl
r_pred_proj <- projectRaster(r_pred, crs = map_proj$proj4string, method = "ngb")
par(mar = c(3.5, 0.25, 0.25, 0.25))
# set up plot area
plot(bcr, col = NA, border = NA)
plot(ne_land, col = "#dddddd", border = "#888888", lwd = 0.5, add = TRUE)
# encounter rate
r_max <- ceiling(10 * cellStats(r_pred_proj, max)) / 10
brks <- seq(0, r_max, by = 0.025)
lbl_brks <- seq(0, r_max, by = 0.1)
# ebird status and trends color palette
pal <- abundance_palette(length(brks) - 1)
plot(r_pred_proj,
col = pal, breaks = brks,
maxpixels = ncell(r_pred_proj),
legend = FALSE, add = TRUE)
# borders
plot(bcr, border = "#000000", col = NA, lwd = 1, add = TRUE)
plot(ne_state_lines, col = "#ffffff", lwd = 0.75, add = TRUE)
plot(ne_country_lines, col = "#ffffff", lwd = 1.5, add = TRUE)
box()
# legend
par(new = TRUE, mar = c(0, 0, 0, 0))
title <- "Wood Thrush Encounter Rate"
image.plot(zlim = range(brks), legend.only = TRUE,
col = pal, breaks = brks,
smallplot = c(0.25, 0.75, 0.06, 0.09),
horizontal = TRUE,
axis.args = list(at = lbl_brks, labels = lbl_brks,
fg = "black", col.axis = "black",
cex.axis = 0.75, lwd.ticks = 0.5,
padj = -1.5),
legend.args = list(text = title,
side = 3, col = "black",
cex = 1, line = 0))
r\u pred\u proj我相信,只要使用plot()
函数,您可能需要考虑使用asp
参数来指定纵横比,这样您就可以选择要将地图“缩放”到该目标区域的x和y限制,这可能需要一些尝试和错误。