График временного ряда пикселей

r plot time-series raster

451 просмотра

1 ответ

Я пытаюсь создать интерактивный график из растрового кирпича, в котором щелчок по пикселю дает вам временной ряд данных для этого пикселя. (Мой растровый кирпич составляет около 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

Любой совет, пожалуйста?

Автор: NAmo Источник Размещён: 08.11.2019 11:17

Ответы (1)


2 плюса

Предполагая, что вы хотите разрешить пользователю кликать один раз, вы должны указать 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)

Вот пример графика после нажатия на ячейку ... введите описание изображения здесь

Автор: jbaums Размещён: 28.08.2016 12:14
Вопросы из категории :
32x32