у меня есть стек растровый, stk
, состоящий из трех растровых изображений в R. Вот простой примерR: Написать RasterStack и сохранить имена слоев
# set up a raster stack with three layers
> library(raster)
> r <- raster(nrows=10,ncols=10)
> r[] <- rnorm(100)
> stk <- stack(r,r,r)
# layer names are set by default
> names(stk)
[1] "layer.1" "layer.2" "layer.3"
Поручаю имена растровых слоев:
# set layer names to "one", "two" and "three"
> names(stk) <- c('one','two','three')
> names(stk)
[1] "one" "two" "three"
Когда я пишу RasterStack к GeoTiff (многослойное) с помощью:
writeRaster(stk,"myStack.tif", format="GTiff")
Слои переименовываются на основе имени файла (см. Ниже > names(stk)
).
Когда я прочитал в стеке растровом:
> stk <- stack("myStack.tif")
# the layer names have been set automatically based on the filename
# they should be "one", "two" and "three"
> names(stk)
[1] "myStack.1" "myStack.2" "myStack.3"
Вы знаете какой-либо способ, чтобы сохранить имена слоев при написании RasterStacks в R? Я попытался записать стек в форматы GeoTIFF и NetCDF.
Спасибо, Кевин
где вы читаете сложный файл tif? –
Пауло, спасибо, что посмотрели. Я просто очистил пример, чтобы сделать его более понятным и исправленным некоторые формулировки. Я читаю в сложном файле tif, используя 'stk <- stack (" myStack.tif ")' (первая строка последнего блока кода). Еще раз спасибо. – kguay