#r #plot #zooming #raster
#r #график #масштабирование #растр
Вопрос:
Я построил карту наложения теней холмов и подверженности оползням. Я хотел бы увеличить определенную область графика.
landslide_raster_pred <-predict(ta,landslide_model, type = "response")
hillshade <- hillShade(slope_data, aspect_ratio, angle=45, 0)
overlay_map <- overlay(landslide_raster_pred,hillshade, fun=function(x,y){return(x*y)})
dev_coordinate=data.frame(x=714717.7, y=9560497)
# Extract the susceptibility at the point of interest from the raster
dev_prediction <- extract(landslide_raster_pred, dev_coordinate)
# Plot the overlay map with the point of interest
plot(overlay_map, main = "Landslide susceptibility and hillshade map",
xlab = "longitude",
ylab ="latitude")
points(c(714717.7), c(9560497))
Как я могу увеличить область, в которой находится точка, чтобы показать лучшее изображение / разрешение? Любая помощь будет оценена, спасибо.
Комментарии:
1. (обратите внимание, что метки «долгота» и «широта» здесь явно неверны)
Ответ №1:
Пример данных
library(raster)
f <- system.file("external/test.grd", package="raster")
r <- raster(f)
pt <- cbind(180000,331000)
plot(r); points(pt)
Вы можете создать экстент, подобный этому
s <- 500
e <- extent(pt[1]-s, pt[1] s, pt[2]-s, pt[2] s)
А затем используйте это для построения такого графика
plot(r, ext=e)
Или вот так
zoom(r, e)
Вы также можете сделать это в интерактивном режиме, нарисовав прямоугольник на графике
plot(r)
zoom(r, drawExtent())
Или
plot(r, xlim=c(pt[1]-s, pt[1] s), ylim=c(pt[2]-s, pt[2] s))