График временного ряда пикселей
Я пытаюсь создать интерактивный график растрового кирпича, в котором щелчок по пикселю дает вам временной ряд данных для этого пикселя. (Мой растровый кирпич составляет около 345 изображений.)
Вот что я сделал:
library(raster)
EVI <- "D:\\Modis_EVI\\Original\\EVI_Stack_single5000.tif"
y.EVI <- brick(EVI)
plot(as.numeric(click(y.EVI)), type="l", lwd=2)
Но это вовсе не сюжет. И когда я пытаюсь с меньшим стеком, как только 4 изображения, это выдает эту ошибку:
Error in plot.window(…) : need finite 'xlim' values
Любой совет, пожалуйста?
1 ответ
Предполагая, что вы хотите разрешить пользователю кликать один раз, вы должны указать n=1
в click
, Например:
library(raster)
b <- brick(replicate(10, raster(matrix(runif(100), ncol=10))))
plot_ts <- function(x) {
plot(x[[1]])
z <- c(click(x, n=1, show=FALSE))
plot(z, type='l', lwd=2, ylab='y', xlab='time', las=1)
z
}
z <- plot_ts(b)