用法:
arcgis.raster.analytics.aggregate_multidimensional_raster(input_multidimensional_raster, dimension=None, variables=None, aggregation_method='MEAN', aggregation_definition='ALL', interval_keyword=None, interval_value=None, interval_unit=None, interval_ranges=None, aggregation_function=None, ignore_nodata=True, output_name=None, context=None, dimensionless=False, percentile_value=90, percentile_interpolation_type='NEAREST', *, gis=None, future=False, **kwargs)
参数:
- input_multidimensional_raster: 必需的 ImageryLayer 对象。输入多维栅格。传送门物品可以通过。
- dimension: 必需的字符串。聚合维度。这是聚合变量的维度。
- variables: 可选列表。将沿给定维度聚合的一个或多个变量。如果未指定变量,则将聚合具有所选维度的所有变量。 例如,要将每日温度数据聚合为每月平均值,请将温度指定为要聚合的变量。如果您未指定任何变量并且同时具有每日温度和每日降水量变量,则这两个变量将聚合为月平均值,并且输出多维栅格将包含这两个变量。
- aggregation_method:
可选字符串。指定将用于在间隔中组合聚合切片的数学方法。
- MEAN:计算区间内所有切片的像素值的平均值。这是默认设置。
- MAXIMUM:计算区间内所有切片的像素最大值。
- MAJORITY:计算间隔内所有切片中像素出现频率最高的值。
- MINIMUM:计算区间内所有切片的像素最小值。
- MINORITY:计算间隔内所有切片中像素出现频率最低的值。
- MEDIAN:计算区间内所有切片的像素中值。
- PERCENTILE:像素值的百分位数将在间隔中的所有切片上计算。默认情况下计算第 90 个百分位数。您可以使用 percentile_value 参数指定其他值(从 0 到 100)。
- RANGE:计算区间内所有切片的像素值范围。
- STD:计算区间内所有切片的像素值的标准差。
- SUM:计算区间内所有切片的像素值之和。
- VARIETY:计算区间内所有切片中像素唯一值的数量。
- CUSTOM:根据自定义栅格函数计算像素值。当 aggregation_method 设置为 CUSTOM 时,aggregation_function 参数变为可用。
- aggregation_definition:
可选字符串。指定将聚合数据的维度间隔。
- ALL:数据值将在所有切片中聚合。这是默认设置。
- INTERVAL_KEYWORD:变量数据将使用众所周知的间隔进行聚合。
- INTERVAL_VALUE:变量数据将使用用户指定的间隔和单位进行聚合。
- INTERVAL_RANGES:变量数据将在指定的值或日期对之间聚合。
- interval_keyword:
可选字符串。指定沿维度聚合时将使用的关键字间隔。当aggregation_definition参数设置为INTERVAL_KEYWORD时需要该参数,并且聚合必须是跨时间的。
- HOURLY:数据值将聚合到每小时的时间步长中,结果将包括时间序列中的每小时。
- DAILY:将数据值聚合为每日时间步长,结果将包括时间序列中的每一天。
- WEEKLY:数据值将聚合为每周时间步长,结果将包括时间序列中的每周。
- DEKADLY:将每个月分为 3 个时段,每个时段 10 天(最后一个时段可能多于或少于 10 天),每个月将输出 3 个切片。
- PENTADLY:将每个月分为 6 个时段,每个时段 5 天(最后一个时段可能多于或少于 5 天),每个月将输出 6 个切片。
- MONTHLY:数据值将聚合到每月时间步长中,结果将包括时间序列中的每个月。
- QUARTERLY:数据值将聚合为季度时间步长,结果将包括时间序列中的每个季度。
- YEARLY:数据值将聚合到每年的时间步长中,结果将包括时间序列中的每一年。
- RECURRING_DAILY:将数据值聚合成每日时间步长,结果包括每天每个聚合值。输出最多包括 366 个每日时间片
- RECURRING_WEEKLY:数据值将聚合到每周的时间步长中,结果将包括每周一个聚合值。输出将最多包括 53 个每周时间片。
- RECURRING_MONTHLY:数据值将被聚合到每周的时间步长中,结果将包括每个月的一个聚合值。输出将包括最多 12 个每月时间片。
- RECURRING_QUARTERLY:数据值将聚合到每周的时间步长中,结果将包括每季度一个聚合值。输出最多包括 4 个季度时间片。
- interval_value: 可选字符串。将用于聚合的间隔大小。当aggregation_definition 参数设置为INTERVAL_VALUE 时需要此参数。 例如,要将 30 年的每月温度数据汇总为 5 年增量,请输入 5 作为 interval_value,并将 interval_unit 指定为 YEARS。
- interval_unit:
可选整数。将用于间隔值的单位。当维度参数设置为时间字段且aggregation_definition参数设置为INTERVAL_VALUE时,需要此参数。
如果您要聚合除时间以外的任何内容,则此选项将不可用,并且间隔值的单位将与输入多维栅格数据的可变单位相匹配。
- HOURS:数据值将按提供的间隔聚合到每小时的时间片中。
- DAYS:数据值将按提供的间隔聚合到每日时间片中。
- WEEKS:数据值将按提供的间隔聚合到每周时间片中。
- MONTHS:数据值将按提供的时间间隔聚合到每月时间片中。
- 年:数据值将按提供的时间间隔聚合到年度时间片中。
- interval_ranges:
字典对象的可选列表。指定为将用于聚合值组的字典对象列表的间隔范围。
当aggregation_definition 参数设置为INTERVAL_RANGE 时需要此参数。如果维度为StdTime,则该值必须以人类可读的时间格式(YYYY-MM-DDTHH:MM:SS)指定。
- 用法:
- [{“minValue”:”<最小值>”,”maxValue”:”<最大值>”}, {“minValue”:”<最小值>”,”maxValue”:”<最大值>”}]
- 例子:
- [{“minValue”:”2012-01-15T03:00:00”,”maxValue”:”2012-01-15T09:00:00”}, {“minValue”:”2012-01-15T12:00:00”,”maxValue ”:”2012-01-15T21:00:00”}]
- aggregation_function: 来自门户的可选 RFT dict 对象或光栅函数模板项目。用于计算聚合栅格的像素值的自定义栅格函数。 当aggregation_method 参数设置为 CUSTOM 时,此参数是必需的。
- ignore_nodata:
可选布尔值。指定在分析中是否忽略 NoData 值。
- True:分析将包括沿给定维度的所有有效像素,并忽略任何 NoData 像素。这是默认设置。
- 错误:如果沿给定维度的像素有任何 NoData 值,则分析将导致 NoData。
- dimensionless:
可选布尔值。指定图层是否具有尺寸值。如果选择单个切片以创建图层,则此参数仅处于活动状态。
- True:图层将没有维度值。
- False:图层将具有维度值。这是默认设置。
- percentile_value:
可选浮点数。要计算的百分位数。默认值为 90,表示第 90 个百分位数。
值的范围可以从 0 到 100。第 0 个百分位数本质上相当于最小统计量,第 100 个百分位数相当于最大值。值 50 将产生与中位数统计量基本相同的结果。
仅当aggregation_method 参数设置为 PERCENTILE 时,此选项才有效。
ArcGIS Image Server 10.9.1 及更高版本中可用的参数。
- 例子:
- 90
- percentile_interpolation_type:
可选字符串。指定当输入栅格中有偶数个要计算的值时将使用的百分位插值方法
- NEAREST:将使用最接近所需百分位数的可用值。在这种情况下,输出像素类型将与输入值栅格的像素类型相同。这是默认设置
- LINEAR :将使用来自所需百分位数的两个周围值的加权平均值。在这种情况下,输出像素类型将是浮点数。
- 例子:
- NEAREST
- output_name: 可选字符串。如果未提供,则由该方法创建影像服务并将其用作输出栅格。您可以从 GIS 中传入现有的影像服务项目来使用它。 或者,您可以传入应通过此方法创建的输出图像服务的名称,以用作工具的输出。 如果该名称的服务已经存在,则会引发 RuntimeError
- context:
context 包含影响任务执行的其他设置。
context 参数覆盖通过arcgis.env 参数设置的值
此函数具有以下设置:
- Extent(范围):定义分析区域的边界框。
- 例子:
- {“extent”:{“xmin”:-122.68,“ymin”:45.53,“xmax”:-122.45,“ymax”:45.6,“spatialReference”:{“wkid”:4326}}
- 输出空间参考 (outSR):输出栅格将投影到输出空间参考中。
- 例子:
- {“outSR”:{空间参考}}
- 捕捉栅格 (snapRaster):输出栅格的像元将与指定的捕捉栅格对齐。
- 例子:
- {‘snapRaster’:{‘url’:‘<image_service_url>’}}
- 像元大小(cellSize):输出栅格将具有由像元大小指定的分辨率。
- 例子:
- {'cellSize': 11} 或 {'cellSize': {‘url’: <image_service_url>}} 或 {'cellSize': 'MaxOfIn'}
- 并行处理因子(parallelProcessingFactor):控制光栅处理(CPU)服务实例。
- 例子:
- 具有指定数量的处理实例的语法示例: {“parallelProcessingFactor”:“2”} 具有指定百分比的总处理实例的语法示例: {“parallelProcessingFactor”:“60%”}
- Extent(范围):定义分析区域的边界框。
- gis: 仅关键字参数。可选的地理信息系统。运行此工具的 GIS。如果未指定,则使用活动 GIS。
- future: 仅关键字参数。可选布尔值。如果为 True,则结果将是一个 GPJob 对象,并且结果将异步返回。
- folder:
仅关键字参数。可选的 str 或 dict。使用给定文件夹名称在门户中创建一个文件夹(如果不存在)并将输出保存在此文件夹中。 gis.content create_folder() 返回的字典也可以作为输入传入。
- 例子:
- {‘username’:‘user1’, ‘id’:‘6a3b77c187514ef7873ba73338cf1af8’, ‘title’:‘trial’}
- tiles_only: 仅关键字参数。可选的布尔值。在ArcGIS Online 中,此函数的默认输出影像服务将是平铺影像图层。 要在 ArcGIS Online 上创建动态影像图层作为输出,请将 tiles_only 参数设置为 False。 函数将不支持ArcGIS Enterprise 中的tiles_only 参数,默认情况下会生成动态影像图层。
返回:
通过沿维度聚合现有多维栅格变量来生成多维影像服务。 ArcGIS Image Server 10.8 及更高版本中可用的函数。
output_raster:影像图层项目
示例 1:
# Usage Example 1: This example aggregates temperature data into yearly data with the average temperature values. agg_multi_dim = aggregate_multidimensional_raster(input_multidimensional_raster=multidimensional_lyr_input, variables=["temperature"], dimension="StdTime", aggregation_method="MAXIMUM", aggregation_definition="INTERVAL_KEYWORD", interval_keyword="YEARLY", interval_value=None, output_name="yearly_temp", ignore_nodata=True, gis=gis, folder="aggregate_mdim_raster")
示例 2:
# Usage Example 2: This example aggregates temperature data into hourly data with the average temperature values for multiple variables. agg_multi_dim = aggregate_multidimensional_raster(input_multidimensional_raster=multidimensional_lyr_input, variables=["cceiling","ccover","gust","temperature"], dimension="StdTime", aggregation_method="MEAN", aggregation_definition="INTERVAL_VALUE", interval_value=3, interval_unit="HOURS", output_name="hourly_data", ignore_nodata=True, gis=gis, folder={'username': 'user1', 'id': '6a3b77c187514ef7873ba73338cf1af8', 'title': 'aggregate_mdim_raster'})
示例 3:
# Usage Example 3: This example aggregates temperature data using a custom aggregation function for multiple variables. This example uses aggregation function # uploaded as a Raster Function Template item on portal. agg_multi_dim = aggregate_multidimensional_raster(input_multidimensional_raster=multidimensional_lyr_input, variables=["temperature"], dimension="StdTime", aggregation_method="CUSTOM", aggregation_definition="INTERVAL_RANGES", interval_ranges=[{"minValue":"2012-01-15T03:00:00","maxValue":"2012-01-15T09:00:00"},{"minValue":"2012-01-15T12:00:00","maxValue":"2012-01-15T21:00:00"}], aggregation_function=rft_item, output_name="temp_range4", ignore_nodata=True, gis=gis)
相关用法
- Python arcgis.raster.analytics.analyze_changes_using_ccdc用法及代码示例
- Python arcgis.raster.analytics.analyze_changes_using_landtrendr用法及代码示例
- Python arcgis.raster.analytics.sample用法及代码示例
- Python arcgis.raster.analytics.segment用法及代码示例
- Python arcgis.raster.analytics.build_footprints用法及代码示例
- Python arcgis.raster.analytics.merge_multidimensional_rasters用法及代码示例
- Python arcgis.raster.analytics.build_overview用法及代码示例
- Python arcgis.raster.analytics.summarize_categorical_raster用法及代码示例
- Python arcgis.raster.analytics.delete_image用法及代码示例
- Python arcgis.raster.analytics.delete_image_collection用法及代码示例
- Python arcgis.raster.analytics.zonal_statistics_as_table用法及代码示例
- Python arcgis.raster.analytics.optimal_region_connections用法及代码示例
- Python arcgis.raster.analytics.train_random_trees_regression_model用法及代码示例
- Python arcgis.raster.analytics.generate_trend_raster用法及代码示例
- Python arcgis.raster.analytics.interpolate_points用法及代码示例
- Python arcgis.raster.analytics.summarize_raster_within用法及代码示例
- Python arcgis.raster.analytics.predict_using_trend_raster用法及代码示例
- Python arcgis.raster.analytics.manage_multidimensional_raster用法及代码示例
- Python arcgis.raster.analytics.convert_feature_to_raster用法及代码示例
- Python arcgis.raster.analytics.build_multidimensional_transpose用法及代码示例
- Python arcgis.raster.analytics.detect_change_using_change_analysis_raster用法及代码示例
- Python arcgis.raster.analytics.train_classifier用法及代码示例
注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 arcgis.raster.analytics.aggregate_multidimensional_raster。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。