當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python ArcGIS RasterCollection用法及代碼示例


本文簡要介紹 python 語言中 arcgis.raster.RasterCollection 的用法。

用法:

class arcgis.raster.RasterCollection(rasters=None, attribute_dict=None, where_clause=None, query_geometry=None, engine=None, gis=None, context=None)

RasterCollection 對象允許輕鬆對一組柵格進行排序和過濾,並準備一個集合以進行其他處理和分析。

Parameter

Description

rasters

輸入柵格數據集。支持的輸入包括本地或數據存儲柵格列表、鑲嵌數據集、雲柵格格式的多維柵格、NetCDF 文件或影像服務。如果您使用柵格數據集列表,則所有柵格必須具有相同的像元大小和空間參考。

如果輸入是本地柵格數據集,則 arcpy 應該可用。

attribute_dict

可選字典。當輸入是柵格列表時,要添加到每個柵格的屬性信息。對於每個鍵值對,鍵是屬性名稱,值是表示每個柵格的屬性值的值列表。例如,要將名稱字段添加到三個柵格的列表中,請使用 {“name”: [“Landsat8_Jan”, “Landsat8_Feb”, “Landsat8_Mar”]}。

where_clause

可選字符串。限製返回記錄的表達式。

query_geometry

可選的。過濾項目的對象,以便僅返回與對象相交的項目。

engine

可選字符串。要使用的後端引擎。可能的選項:

  • arcpy : Use the arcpy engine for processing.

  • image_server : Use the Image Server engine for processing.

gis

RasterCollection 對象的可選 GIS

context

可選的。用於控製 RasterCollection 創建的其他屬性。上下文參數將受到由此創建的所有其他集合(即映射/過濾器輸出)的尊重。過濾器/映射方法還支持上下文參數,可以為每個方法單獨配置該參數。

目前可用:

  • query_boundary: The boolean value set to this option determines whether to add SHAPE field to the RasterCollection. The value in the SHAPE field represents the boundary/geometry of the raster. The query_boundary parameter is honoured only when the RasterCollection is created from a list of Rasters.

    • True: Set query_boundary to True to add the SHAPE field to the RasterCollection.

    • False: Set query_boundary to False to not add the SHAPE field to the RasterCollection. (Creation of RasterCollection would be faster)

    By default, query_boundary is set to True, i.e, SHAPE field will be added.

    Example: {“query_boundary”:True}

示例 1:

# Usage Example 1: Creates a raster collection from image service url
service_url = gis.content.search('my_rasters', item_type="Imagery Layer")[0].url

rc = RasterCollection(rasters=service_url, gis=gis)

示例 2:

# Usage Example 2: Creates a raster collection from rasters stored locally

ras1 = Raster(r"./data/ras1.tif")
ras2 = Raster(r"./data/ras2.tif")
ras3 = Raster(r"./data/ras3.tif")

ras_list = [ras1, ras2, ras3]

# Add attributes to the raster collection

acquisition_date = ["2016-01-01T00:00:00", "2016-02-01T00:00:00", "2016-03-01T00:00:00"]
name_list = ["Landsat8_Jan", "Landsat8_Feb", "Landsat8_Mar"]

rc = RasterCollection(rasters=ras_list,
                      attribute_dict={"name": name_list,
                                      "AcquisitionDate": acquisition_date}
                     )

相關用法


注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 arcgis.raster.RasterCollection。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。