最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Python學習記錄:ArcPy批量矢量掩膜(裁剪)柵格|ArcGISPro|R|Arcmap|ArcPy2.7

2022-07-04 23:53 作者:孤獨的王大老實  | 我要投稿

最近學習Python和ArcPy,打算把之前用R做過的事情再用Python復現(xiàn)一下。

前言:

1.用Arcmap操作矢量裁剪柵格有兩種方法,一個是數(shù)據(jù)管理工具的裁剪clip,還有一個是spatial analyst工具的按掩膜提取。但是在ArcGIS Pro中,裁剪clip工具變成了“切片柵格”。

2.數(shù)據(jù)示例是用R語言MODIStsp包下載的MCD12Q1土地覆蓋文件(IGBP分類)(2018年-2020年),然后用山東省的shp文件進行掩膜。

3.ArcGIS Pro中用的是Python3版本,所以這個版本的ArcPy和Arcmap的Python2.7版本還是有很多不同的。經(jīng)過測試,如果用arcpy3.x版本進行批量提取研究區(qū)范圍的話,最好還是用掩膜函數(shù),因為“切片柵格”函數(shù)要輸入四個邊角。

方法:

經(jīng)過探索,如果是用Python3的ArcPy(ArcGISPro)代碼是這個樣子:

法1:

法2:

如果是用Python2的ArcPy(Arcmap)代碼是這個樣子:


結(jié)果:

最終輸出的文件如圖


討論:

無論是ArcGIS還是ArcPy裁剪掩膜輸出的文件,除了tif文件還有很多其他后綴的文件,但是R語言裁剪掩膜就不會附帶這些。


但是很奇怪的是,把最終文件放在arcgisR語言以及Python可視化是不一樣的。

在ArcGIS?Pro中的樣子
ArcGIS Pro的屬性描述
R語言terra包的屬性描述和可視化
Python的rasterio

從對比圖可以看出,無論是行列數(shù)還是范圍上,都沒有差別。

但是R語言圖里有一個有趣的地方:屬性描述顯示最小最大值是3和17,但是在繪圖窗口的圖例卻有120多的。顯然R在繪圖的時候,把ArcPy生成的的NA值認為是某個數(shù)值(numeric)。

為了驗證我的猜想,我查看了這幅柵格的第一行和第一列的像元數(shù)值,其顯示為128。如果我猜得沒錯,R中綠色的部分應該都是128,。如果我把值為128的像元都設(shè)置為NA,那么它就應該和ArcGIS?Pro顯示的一樣了。

結(jié)果驗證了我的猜想。

Tips:這里的將某個值設(shè)置為NA或者為別的值,要用雙等號邏輯連接符


Python中查看也是如此,但是nodata值變成了-128.


Question:

在用Python遍歷柵格的時候,發(fā)現(xiàn)一個問題:

如果打印raster,會出來3個柵格。但是如果打印rasters的話會出來3個重復的列表。為什么打印rasters就會是三個列表呢?期盼有看到這篇文章的大手子可以指點一下。

Python學習記錄:ArcPy批量矢量掩膜(裁剪)柵格|ArcGISPro|R|Arcmap|ArcPy2.7的評論 (共 條)

分享到微博請遵守國家法律
广德县| 仲巴县| 清镇市| 绩溪县| 苗栗市| 台州市| 衡南县| 普格县| 高陵县| 富蕴县| 西乌| 北辰区| 新绛县| 讷河市| 虞城县| 云阳县| 定安县| 五华县| 罗定市| 贵港市| 张家界市| 美姑县| 英德市| 登封市| 沂水县| 伊春市| 柏乡县| 丁青县| 乐业县| 兴国县| 偏关县| 武山县| 宜宾县| 兴山县| 绥棱县| 白银市| 吉木乃县| 贡觉县| 辰溪县| 磐石市| 水城县|