Daha çox

Aspect Raster faylı əsasında Raster-dən məlumatların çıxarılması


Məndə 2 raster var, bunlar aspekt göstərir, digəri isə qar əriməsinin tarixini göstərir. Qar əriməsi tarixini aspekt rasterindən dəyərlərə əsaslanaraq çıxarmaq istəyirəm. Məsələn, bütün qar ərimə tarixlərini cənub istiqamətindəki yamaclardan istəyirəm. Artıq şimal (1), şərq (2), cənub (3), qərb (4) müəyyənləşdirmişəm. Dəyərləri çıxarmağa çalışdım:

snowThawSouth <- çıxarış (aspekt == 3, snowThawDate)

Bununla birlikdə aşağıdakı səhv var:

Buradakı səhv (function (sınıflar, fdef, mtable): '' RasterLayer "," RasterLayer "'imzası üçün' çıxarış '' funksiyası üçün miras alınmış bir metod tapa bilmirik '' Əlavə: Xəbərdarlıq mesajı: istifadə olunmayan bağlantının bağlanması 3 (/ var / folders / 4_ / 9jsy7tfj2yq0s_czc2gc6tvh0000gn / T / R_raster_USER // 2015-07-17_152719_21839_88030.gri)

Yalnızca hüceyrənin aspektinə əsasən qar əriməsi tarixlərini müqayisə etmək üçün hər bir aspekt üçün bütün dəyərləri bir siyahıya çıxarmaq istəyirəm.


çıxarışbir vektorla kəsişməyə əsaslanan raster dəyərlərini çıxarır. Bir xal shapefile kimi bir şey verilmiş raster dəyərlərindən nümunə götürmək istəsəniz faydalı ola bilər. Bununla birlikdə, bu vəziyyətdə, a-nı dəyərə əsasən müəyyənləşdirmək və sonra məlumatları birbaşa rastrdan əldə etmək istəyirsiniz. Verilənlərin oxunması ilə bağlı bir problem yaranarsa, bunun dəyişdirilməsinə ehtiyac ola bilər:

# Fərqli cəhətləri təmsil edən indeksləri əldə edin. # Bunlar şimal, şərq və s. Üçün hüceyrə indekslərinə uyğundur. = 3) idxWest <- hansı (getValues ​​(aspekt) == 4)

Verilənləri birbaşa bir vektora çıxarmaq üçün bu indekslərdən istifadə edə bilərik:

snowThawNorth <- getValues ​​(snowThawDate) [idxNorth] snowThawEast <- getValues ​​(snowThawDate) [idxEast] snowThawEast <- getValues ​​(snowThawDate) [idxSouth] snowThawWest <- getValues ​​(snowThawDate)

@JeffEvans'ın qeyd etdiyi kimi bunlar qısalıq üçün yuvalana bilər:

snowThawNorth <- getValues ​​(snowThawDate) [which (getValues ​​(aspect) == 1)] snowThawEast <- getValues ​​(snowThawDate) [which (getValues ​​(aspect) == 2)] snowThawEast <- getValues ​​(snowThawDate) [which (getValues ​​(aspect) == 1)) aspekt) == 3)] snowThawEast <- getValues ​​(snowThawDate) [hansı (getValues ​​(aspekt) == 4)]


Videoya baxın: Map Algebra Functionality and Advanced Raster Calculator Calculations (Oktyabr 2021).