创建正态栅格 (空间分析)
摘要
基于“分析”窗口的范围和像元大小创建具有正态(高斯)分布随机值的栅格。
插图
用法
-
创建正态栅格工具可为输出栅格中的每个像元生成相应值。
此工具中的输出栅格始终为浮点型。
像元值最高可精确到小数点后 7 位数。
-
输出值的平均值为 0.0,标准差为 1.0。如果希望输出栅格具有其他标准差,则可将它乘以该值。如果希望栅格具有其他平均值,则可该值与其相加。例如,要创建具有平均值为 39、标准差为 2.5 这种值特征的栅格,可以将创建正态栅格的结果乘以 2.5,然后加上 39。
在“地图代数”中,您可以执行如下操作:
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/data" outNorm = CreateNormalRaster(1, Extent(0, 0, 100, 100)) * 2.5 + 39 outNorm.save("C:/output/norm2")
-
随机数生成器会使用系统时钟的当前值(自 1970 年 1 月 1 日后的秒数)来进行自动播种。对创建随机栅格工具执行种子重新设定将导致创建正态栅格的种子重新设定。
语法
CreateNormalRaster ({cell_size}, {extent})
参数 | 说明 | 数据类型 |
cell_size (可选) |
输出栅格数据集的像元大小。 如果专门进行设置,则是环境中的值。如果未进行专门设置,则该值为输出空间参考中环境范围的宽度或高度中的较小值除以 250。 | Analysis Cell Size |
extent (可选) | 输出栅格数据集的范围。 范围是一个 Python 类。 在该工具中,其形式为:Extent(XMin, YMin, XMax, YMax)
将指定坐标使用与 in_raster 相同的地图单位。 如果专门进行设置,则范围将为环境中的值。如果未进行专门设置,默认值将为 0、0、250、250。 | Extent |
返回值
名称 | 说明 | 数据类型 |
out_raster |
具有平均值为 0.0、标准差为 1.0 的正态分布值的输出栅格。 | Raster |
代码示例
CreateNormalRaster 示例 1(Python 窗口)
本例将基于定义的像元大小和范围创建具有正态分布值的输出栅格。
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" outNormalRaster = CreateNormalRaster(2, Extent(0, 0, 150, 150)) outNormalRaster.save("C:/sapyexamples/output/outnormal")
CreateNormalRaster 示例 2(独立脚本)
本例将基于定义的像元大小和范围创建具有正态分布值的输出栅格。
# Name: CreateNormalRaster_Ex_02.py # Description: Creates a raster of random values from a normal distribution # Requirements: Spatial Analyst Extension # Import system modules import arcpy from arcpy import env from arcpy.sa import * # Set environment settings env.workspace = "C:/sapyexamples/data" # Set local variables cellSize = 2 extent = Extent(0, 0, 150, 150) # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute CreateNormalRaster outNormalRaster = CreateNormalRaster(cellSize, extent) # Save the output outNormalRaster.save("C:/sapyexamples/output/outnormraster")
相关主题
许可信息
ArcView: 需要 Spatial Analyst
ArcEditor: 需要 Spatial Analyst
ArcInfo: 需要 Spatial Analyst
7/10/2012