Bagaimana cara mendapatkan file raster dari daftar raster bersarang yang dihasilkan oleh paket lanskapmetrik di R?

Paket landscapemetrics dapat menghitung luas setiap patch untuk file raster tertentu, bentuk patch tersebut, dan seterusnya. Saya ingin tidak hanya tibble-frame dengan metrik patch yang dihitung, tetapi juga raster baru di mana setiap piksel dalam patch tertentu akan memiliki nilai area patch tersebut, indikator bentuk, dan sebagainya. Kita dapat melakukannya dengan fungsi spatialize_lsm() (ini menghasilkan Large list objek bersarang dengan kemungkinan RasterObject objek di dalamnya):

library(landscapemetrics)

plot(podlasie_ccilc) # this raster data is provided with package

podlasie.metrics.area <- spatialize_lsm(podlasie_ccilc, what = 'lsm_p_area') # creates a list

plot(podlasie.metrics.area) # produces an error...

Bagaimana cara mendapatkan file raster yang diinginkan dengan metrik patch dari daftar itu? Saya kira ini adalah pertanyaan tentang paket raster atau yang lainnya, karena dokumentasi landscapemetrics tidak menjelaskan apa pun tentang langkah ini.

Saya tidak yakin bahwa data dan raster baru ini tidak memiliki resolusi piksel seperti dalam meter (30, 30 untuk citra satelit Landsat, misalnya). Jadi kita tidak bisa memplot raster baru yang dihasilkan:

podlasie.metrics.area[[1]]
plot(podlasie.metrics.area[[1]])

Jadi saya kira lanskapmetrik tidak dapat menangani raster seperti itu, kita bahkan dapat menggunakan fungsinya untuk memeriksa kesesuaian raster sebelumnya untuk penemuan patch:

check_landscape(podlasie_ccilc)

Pembaruan. Saya melakukannya untuk dataset Landsat dengan resolusi 30, 30 dan menghasilkan raster area patch, tetapi sekali lagi saya tidak dapat membuka/menampilkan/menyimpannya sebagai raster, karena kesalahan yang sama.


person Maksym Matsala    schedule 12.02.2020    source sumber
comment
apa yang str(podlasie.metrics.area) tunjukkan?   -  person Val    schedule 13.02.2020
comment
Val, Daftar 1 $ :Daftar 1 ..$ lsm_p_area:Kelas formal 'RasterLayer' [paket raster] dengan 12 slot .. .. ..@ file :Kelas formal '.RasterFile' [paket raster] dengan 13 slot   -  person Maksym Matsala    schedule 13.02.2020
comment
harap perbarui pertanyaan Anda, agar lebih mudah dibaca   -  person Val    schedule 13.02.2020
comment
Saya kira karena podlasie_ccilc memiliki resolusi bukan dalam meter, serta kumpulan data saya sendiri yang dibuat oleh algoritma LandTrendR dari deret waktu Landsat. Sedangkan dataset Landsat saya memiliki resolusi 30,30 m. Saya harus memikirkan apa yang harus saya lakukan.   -  person Maksym Matsala    schedule 13.02.2020


Jawaban (1)


Pengelola paket membantu memecahkan masalah (ya, ini hanya terkait dengan struktur daftar):

plot(podlasie.metrics.area[[1]]$lsm_p_area)
person Maksym Matsala    schedule 13.02.2020