等值线 (3D Analyst)
用法
-
等值线不能延伸到栅格的空间范围以外,并且无法在 NoData 区域中生成;因此,相邻等值线输入应首先与连续要素数据集进行边匹配。还可以在计算等值线前将相邻栅格合并,以此取代边匹配方法。
-
等值线可以在负栅格值区域内生成。在此区域内的等值线值也将为负值。不允许使用负等值线间距。
如果 Spatial Analyst 可用,则较平滑却欠精确的等值线可通过预处理输入栅格获得,可以使用 MEAN 选项进行 Focal_Statistics 操作,或者通过 LOW 选项使用滤波器工具来执行该预处理过程。
-
例如,在您想要从 10 米处开始每隔 15 米创建等值线时使用起始等值线。此处 10 用于起始等值线,而 15 则为等值线间距。要绘制等值线的值为 10、25、40、55,依此类推。
-
指定起始等值线不会阻止等值线以高于或低于该值的值创建。
语法
参数 | 说明 | 数据类型 |
in_raster |
输入表面栅格。 | Raster Layer |
out_polyline_features |
输出等值线折线 (polyline) 要素。 | Feature Class |
contour_interval | 等值线间的间距或距离。 该值可为任意正数。 | Double |
base_contour (可选) |
起始等值线值。 根据需要生成高于和低于该值的等值线可覆盖输入栅格的整个值范围。默认值为零。 | Double |
z_factor (可选) | 在生成等值线时使用的单位转换因子。默认值为 1。 等值线是基于输入栅格中的 z 值生成的,所采用的测量单位通常为米或英尺。如果使用默认值 1,等值线将采用与输入栅格中的 z 值相同的单位。要以不同于 z 值的单位创建等值线,请为 z 因子设置适当的值。注意,对于此工具,没有必要使地面 x,y 单位与表面 z 单位保持一致。 例如,如果输入栅格中的高程值单位为英尺,但您希望以米为单位来生成等值线,则可将 z 因子设置为 0.3048(因为 1 英尺 = 0.3048 米)。 再如,考虑采用 WGS_84 地理坐标且高程单位为米的输入栅格,您希望以 50 英尺为基础、100 英尺为间隔来生成等值线(即等值线将为 50 英尺、150 英尺、250 英尺,以此类推)。为此,可将 contour_interval 设置为 100、base_contour 设置为 50,并将 z_factor 设置为 3.2808(因为 1 米 = 3.2808 英尺)。 | Double |
代码示例
此示例根据 Esri Grid 栅格创建了等值线,并将其输出为 shapefile。
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.Contour_3d("elevation", "C:/output/outcontours.shp", 200, 0)
此例根据 Esri Grid 栅格创建了等值线,并将其输出为 shapefile。
# Name: Contour_3d_Ex_02.py # Description: Creates contours or isolines from a raster surface. # Requirements: 3D Analyst Extension # Import system modules import arcpy from arcpy import env # Set environment settings env.workspace = "C:/data" # Set local variables inRaster = "elevation" contourInterval = 200 baseContour = 0 outContours = "C:/sapyexamples/output/outcontours02.shp" # Check out the ArcGIS 3D Analyst extension license arcpy.CheckOutExtension("3D") # Execute Contour arcpy.Contour_3d(inRaster, outContours, contourInterval, baseContour)