ArcGIS教程提取栅格像元几种方式Word格式.docx
- 文档编号:7135072
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:19
- 大小:42.17KB
ArcGIS教程提取栅格像元几种方式Word格式.docx
《ArcGIS教程提取栅格像元几种方式Word格式.docx》由会员分享,可在线阅读,更多相关《ArcGIS教程提取栅格像元几种方式Word格式.docx(19页珍藏版)》请在冰点文库上搜索。
说明
数据类型
in_raster
提取像元的输入栅格。
RasterLayer
where_clause
用于选择栅格像元子集的逻辑表达式。
表达式遵循
SQL
表达式的一般格式。
SQLExpression
返回值
名称
out_raster
包含提取像元值的输出栅格。
Raster
代码实例
按属性提取(ExtractByAttributes)示例1(Python窗口)
本示例将基于逻辑查询从栅格中提取像元,其中高程大于1,000米。
import
arcpy
from
arcpy
env
arcpy.sa
*
env.workspace=
"
C:
/sapyexamples/data"
attExtract=ExtractByAttributes("
elevation"
VALUE>
1000"
)
attExtract.save("
c:
/sapyexamples/output/attextract"
按属性提取(ExtractByAttributes)示例2(独立脚本)
#Name:
ExtractByAttributes_Ex_02.py
#Description:
Extractsthecellsofarasterbasedonalogicalquery.
#Requirements:
SpatialAnalystExtension
#Importsystemmodules
#Setenvironmentsettings
#Setlocalvariables
inRaster=
inSQLClause=
#CheckouttheArcGISSpatialAnalystextensionlicense
arcpy.CheckOutExtension("
Spatial"
#ExecuteExtractByAttributes
attExtract=ExtractByAttributes(inRaster,inSQLClause)
#Savetheoutput
/sapyexamples/output/attextract02"
二、按圆形区域提取
基于圆提取栅格像元。
可通过像元的中心来确定该像元是位于圆的内部还是位于圆的外部。
如果中心位于圆弧的内部,则即使部分像元落在圆外,也会将此像元视为完全处于圆内。
未选择的像元位置被赋予NoData值。
ExtractByCircle(in_raster,center_point,radius,{extraction_area})
center_point
指示用于定义提取区域的圆的中心坐标
(x,y)
的点类。
该类的形式为:
∙
Point(x,y)
将指定坐标使用与输入栅格相同的地图单位。
Point
radius
用于定义提取区域的圆半径。
将以地图单位指定半径,并且与输入栅格的单位相同。
Double
extraction_area
(可选)
标识要提取输入圆内部还是输入圆外部的像元。
INSIDE
—
指定应选择输入圆内部的像元并将其写入输出栅格的关键字。
圆形区域外部的所有像元都将在输出栅格中获得
NoData
值。
OUTSIDE
指定应选择输入圆外部的像元并将其写入输出栅格的关键字。
圆形区域内部的所有像元都将在输出栅格中获得
String
按圆形区域提取(ExtractByCircle)示例1(Python窗口)
本示例将在某一点位置方圆500米的半径范围内提取像元。
outExtCircle=ExtractByCircle("
arcpy.Point(482838.823,
222128.982),
500,
INSIDE"
outExtCircle.save("
/sapyexamples/output/extcircle"
按圆形区域提取(ExtractByCircle)示例2(独立脚本)
本示例将在某一点位置方圆1,000米的半径范围内提取像元。
ExtractByCircle_Ex_02.py
Extractsthecellsofarasterbasedonacircle.
inRaster=("
centerPoint=arcpy.Point(482838.823,
222128.982)
circRadius=
1000
extractType=
#ExecuteExtractByCircle
outExtCircle=ExtractByCircle(inRaster,centerPoint,circRadius,
extractType)
/sapyexamples/output/extcircle02"
三、按掩膜提取
提取所定义掩膜区域内的栅格像元。
按掩膜提取工具与设置掩膜环境大体相同,但二者的区别在于输入掩膜只适用于即时实例,而在环境中设置的掩膜可在发生更改或被禁用之前应用于所有工具。
如果输入掩膜是栅格,则会将非NoData输入像元位置的值复制到输出栅格。
可用来创建掩膜栅格的工具包括条件函数、条件测试,以及提取分析工具集中的其他工具。
当为输入栅格掩膜指定多波段栅格时,将只在运算中使用第一个波段。
ExtractByMask(in_raster,in_mask_data)
in_mask_data
用于定义提取区域的输入掩膜数据。
它可以是栅格或要素数据集。
当输入掩膜数据为栅格时,将在输出栅格中为掩膜数据中的
像元指定
RasterLayer|FeatureLayer
按掩膜提取(ExtractByMask)示例1(Python窗口)
本示例将从栅格内提取由输入面shapefile要素类所定义的掩膜内的像元。
outExtractByMask=ExtractByMask("
mask.shp"
outExtractByMask.save("
/sapyexamples/output/maskextract"
按掩膜提取(ExtractByMask)示例2(独立脚本)
ExtractByMask_Ex_02.py
Extractsthecellsofarasterthatcorrespondwiththeareas
#
definedbyamask.
inMaskData=
#ExecuteExtractByMask
outExtractByMask=ExtractByMask(inRaster,inMaskData)
/sapyexamples/output/extractmask"
四、用点提取
基于一组坐标点提取栅格像元。
ExtractByPoints(in_raster,points,{extraction_area})
points
[point,...]
点类对象的
Python
列表用于指示要提取栅格值的位置。
点对象均在
x,y
坐标对列表中指定。
对象形式为:
[point(x1,y1),point(x2,y2),...]
点所使用的地图单位与输入栅格相同。
标识是基于指定点位置(内部)提取像元还是基于点位置外部(外部)提取像元。
指定将所选点落入的像元写入输出栅格的关键字。
方框区域外部的所有像元都将在输出栅格中获得
指定应选择输入点外部的像元并将其写入输出栅格的关键字。
用点提取(ExtractByPoints)示例1(Python窗口)
本示例将基于指定点坐标提取栅格的像元。
pointList=[arcpy.Point(743050,
4321275),arcpy.Point(743100,
4321200),
arcpy.Point(734500,4322000)]
outPointExtract=ExtractByPoints("
soil"
pointList,"
outPointExtract.save("
/sapyexamples/output/pntextract"
用点提取(ExtractByPoints)示例2(独立脚本)
ExtractByPoints_Ex_02.py
Extractsthecellsofarasterbasedonasetofpoints.
4321275),
arcpy.Point(743100,
arcpy.Point(743500,
4322000),
arcpy.Point(742900,
4321800)]
#ExecuteExtractByPoints
/sapyexamples/output/pntext"
五、多边形提取
基于多边形提取栅格像元。
若要基于要素类中的多边形提取像元,而不是提供一系列x,y坐标对,则可以使用按掩膜提取工具。
可通过像元的中心来确定该像元是位于多边形的内部还是多边形的外部。
如果中心位于多边形弧的内部,则即使部分像元落在多边形之外,也会将此像元视为完全处于多边形之内。
多边形最多可以有1,000个折点。
多边形折点必须按顺时针顺序输入。
如果要使用多个多边形,则第一个折点和最后一个折点必须相同,以使多边形闭合。
如果最后的点不相同,多边形将自动闭合。
多边形的弧之间可以相交,但不建议您使用过于复杂的多边形。
ExtractByPolygon(in_raster,polygon,{extraction_area})
polygon
用于定义要提取的输入栅格区域的一个或多个多边形。
每个多边形部分都是由点类定义的一系列折点。
作为可选的,可使用多边形类来定义各个多边形部分。
点将指定为
坐标对。
[[point(x1,y1),point(x2,y2),point(xn,yn),...point(x1,y1)],[point(x'
1,y'
1),point(x'
2,y'
2),point(x'
n,y'
n),...,point(x'
1)]
请注意,最后一个坐标应与第一个坐标相同,从而使多边形闭合。
标识要提取输入多边形内部还是输入多边形外部的像元。
指定应选择输入多边形内部的像元并将其写入输出栅格的关键字。
多边形区域外部的所有像元都将在输出栅格中获得
指定应选择输入多边形外部的像元并将其写入输出栅格的关键字。
多边形区域内部的所有像元都将在输出栅格中获得
多边形提取(ExtractByPolygon)示例1(Python窗口)
本示例将基于定义的多边形坐标提取栅格的像元。
polyPoints=[arcpy.Point(743050,
4322000),arcpy.Point(742900,
extPolygonOut=ExtractByPolygon("
polyPoints,
extPolygonOut.save("
/sapyexamples/output/extpoly"
多边形提取(ExtractByPolygon)示例2(独立脚本)
ExtractByPolgyon_Ex_02.py
Extractsthecellsofarasterbasedonapolygon.
/sapy
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ArcGIS 教程 提取 栅格 像元几种 方式