当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。