Как добавить карту внизу 3D-графика в R
В приведенном ниже примере я хотел бы, чтобы географическая карта была нанесена на плоскости широта-долгота под пересекающимися 2D-профилями.
Использование пакетов plot3D или maps не обязательно.
library(plot3D)
alt <- rev(seq(0, 500, 5))
lat <- seq(30, 65, 0.25)
long <- seq(-135, -65, 0.5)
grid <- mesh(long, lat, alt)
names(grid) <- c("long", "lat", "alt")
colvar <- with(grid, dnorm(long, -100, 20) *
dnorm(lat, 50, 10) *
dnorm(alt, 250, 100))
colvar <- colvar/max(colvar)
slice3D (long, lat, alt,
colvar = colvar,
ys = 50, xs = -100, zs = NULL,
xlab = "long",
ylab = "lat",
zlab = "alt",
theta = 60, phi = 40,
ticktype = "detailed")
Пример карты:
library(maps)
plot(NULL, xlim = range(long), ylim = range(lat),
xlab = "long", ylab = "lat")
map("world", add = TRUE)