日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ArcPy常用类介绍

發布時間:2023/12/10 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ArcPy常用类介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? ? ? ? ArcGIS Pro中的ArcPy類列表如表1所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?表1? ArcPy類列表

類名稱

類別

類名稱

類別

ArcSDESQLExecute

常規

Array

常規

CrossValidationResult

地統計分析

Chart

圖表

ExecuteWarning

異常

env

常規

ExecuteError

異常

Cursor

游標

GeostatisticalDatasets

地統計分析

FieldMap

字段

FieldMappings

字段

FieldInfo

字段

FeatureSet

FeatureSet/RecordSet

Field

字段

ArcSDESQLExecute

常規

Filter

參數

Geometry

幾何

Extent

常規

SpatialReference

常規

Multipoint

幾何

NetCDFFileProperties

常規

Parameter

參數

PointGeometry

幾何

Point

幾何

Polygon

幾何

Polyline

幾何

RandomNumberGenerator

常規

Raster

常規

RecordSet

FeatureSet/RecordSet

Result

常規

SearchNeighborhoodSmooth

地統計分析

Row

游標

SearchNeighborhoodSmoothCircular

地統計分析

Schema

參數

SearchNeighborhoodStandard

地統計分析

Index

常規

SearchNeighborhoodStandardCircular

地統計分析

Value

參數

ValueTable

常規

?

?

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?注:詳細信息請查看http://pro.arcgis.com/zh-cn/pro-app/arcpy/classes/alphabetical-list-of-arcpy-classes.htm。

1. ?ArcPy常用類功能介紹

1. 1 圖表

? ? ? ? ? Chart類用于定義ArcGIS Pro圖表。可通過該類創建不同類型的圖表,包括條形圖、折線圖、直方圖和散點圖,同時也可以使用該類來定義圖表標題、軸線以及其他屬性。

? ? ? ? ?Chart類語法說明如表2所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?表2? Chart類語法說明

參數

數據類型

說明

name

String

圖表的名稱。圖表在每個圖層都必須有一個唯一的名稱。這個名稱僅用于識別,而不會顯示出來。

? ? ? ? ?Chart類屬性如表3所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?表3? Chart類屬性信息

屬性

數據類型

說明

bar (可讀寫)

Object

設置僅適用于條形圖的附加屬性。

description (可讀寫)

String

設置圖表描述。該描述文本會顯示于圖表視圖底部。

histogram (可讀寫)

Object

設置僅適用于直方圖的附加屬性。

legend (可讀寫)

Object

設置圖表圖例的屬性。

line (可讀寫)

Object

設置僅適用于折線圖的附加屬性。

title (可讀寫)

String

設置圖表的標題。

type (可讀寫)

String

設置所要創建圖表的類型。有效選項包括:bar、line、scatter、histogram。

xAxis (可讀寫)

Object

設置x軸的屬性。

yAxis (可讀寫)

Object

設置y軸的屬性。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?注:Chart類屬性詳細信息請查看http://pro.arcgis.com/zh-cn/pro-app/arcpy/classes/chart.htm。

? ? ? ? ? ? ? ? ?Chart類方法如下:

1) addToLayer (layer)

? ? ? ? ? ? ? ?addToLayer方法可以實現將圖表添加至圖層中,其參數及返回值說明分別如表4和表5所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?表4? addToLayer方法參數說明

參數

數據類型

說明

layer

Layer

圖表將添加到此目標 Layer 對象中。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 表5? addToLayer方法返回值說明

數據類型

說明

Object

Chart類將保持不變,但此類的屬性將設置到圖層定義,并將創建一個新圖表。

? ? ? ? ? ? addToLayer使用示例如示例1所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 示例1:addToLayer方法

import arcpy

aprx = arcpy.mp.ArcGISProject("current")

censusLayer = map.listLayers('Census Block Groups')[0]

c = arcpy.Chart('MyChart')

c.type = 'bar'

c.xAxis.field = 'State'

c.yAxis.field = 'Population'

c.addToLayer(censusLayer)

2) updateChart()

? ? ? ? ? ?updateChart方法可將所有更改同步到已添加圖層的圖標中,而不是從頭開始創建一個新的圖標。其返回值說明如表6所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 表6? updateChart方法返回值說明

數據類型

說明

Object

不會以任何形式對Chart類進行修改。只是將類的設置與之前添加到圖層的圖表進行同步。

? ? ? ? ? ? ?updateChart方法使用示例如示例2所示。

chart.addToLayer(myLayer) chart.description = "Data from the U.S. Census Bureau" chart.updateChart()

1.2 FeatureSet和RecordSet

1) FeatureSet

? ? ? ? ? ?FeatureSet對象是要素類的輕量級表示。它是一種既包含方案又包含數據的特殊數據元素。而且,FeatureSet?對象也表示通過服務器發送和接收要素數據的方式。

? ? ? ? ? ?值得注意的是:如果要將某個要素類加載到新的FeatureSet,并使用可對類似計算字段的輸入或類似UpdateCursor的arcpy函數進行修改的地理處理工具來修改FeatureSet,那么原始要素類也將被修改。

? ? ? ? ? ?FeatureSet對象的語法說明、屬性信息及方法說明分別如表7、表8和表9所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?表7? FeatureSet對象說明

參數

數據類型

說明

table

String

要加載到FeatureSet對象中的要素數據。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 表8? FeatureSet對象屬性信息

屬性

數據類型

說明

json (可讀寫)

String

返回一個字符串形式的幾何Esri JSON制圖表達。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 表9? FeatureSet對象方法概述

方法

說明

load(table_path)

從表導入。

save(table_path)

導出到表。

? ? ? ? ? ? ? ? ? ? load方法、save方法的參數描述分別如表10、表11所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?表10? FeatureSet對象load方法參數說明

參數

數據類型

說明

table_path

String

要導入的表。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?表11? FeatureSet對象save方法參數說明

參數

數據類型

說明

table_path

String

要創建的輸出表。

? ? ? ? ? ? ? ? ? FeatureSet對象使用示例如示例3所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?示例3:FeatureSet對象使用示例。

import arcpy

arcpy.env.overwriteOutput = True

arcpy.ImportToolbox("http://flame7/arcgis/services;BufferByVal", "servertools")??????????????

# 坐標列表

coordinates = [[-117.196717216, 34.046944853],

?????????????? [-117.186226483, 34.046498438],

?????????????? [-117.179530271, 34.038016569],

???????????? ??[-117.187454122, 34.039132605],

?????????????? [-117.177744614, 34.056765964],

?????????????? [-117.156205131, 34.064466609],

?????????????? [-117.145491191, 34.068261129],

?????????????? [-117.170825195, 34.073618099],

?????????????? [-117.186784501, 34.068149525],

?????????????? [-117.158325598, 34.03489167]]

feature_class = arcpy.CreateFeatureclass_management("in_memory", "tempfc", "POINT")[0]

with arcpy.da.InsertCursor(feature_class, ["SHAPE@XY"]) as cursor:

??? for (x, y) in coordinates:

??????? cursor.insertRow([(x, y)])

feature_set = arcpy.FeatureSet()

feature_set.load(feature_class)

results = arcpy.BufferPoints_servertools(feature_set)

2) RecordSet

? ? ? ? ? ? ?RecordSet對象是表的輕量級表示。它是一種既包含方案又包含數據的特殊數據元素。RecordSet對象也表示通過服務器發送和接收表的方式。

? ? ? ? ? ? ?值得注意的是:如果要將某個表加載到新的RecordSet,并使用可對類似計算字段的輸入或類似UpdateCursor的arcpy函數進行修改的地理處理工具來修改RecordSet,那么原始表也將被修改。

? ? ? ? ? ? ?RecordSet對象的語法說明、屬性信息及方法說明分別如表12、表13和表14所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 表12? FeatureSet對象說明

參數

數據類型

說明

table

String

要加載到RecordSet對象中的表。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 表13? RecordSet對象屬性信息

屬性

數據類型

說明

json (可讀寫)

String

返回一個字符串形式的幾何 Esri JSON 制圖表達。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?表14? RecordSet對象方法概述

方法

說明

load(table_path)

從表導入。

save(table_path)

導出到表。

? ? ? ? ? ? ? ? load方法、save方法的參數描述分別如表15、表16所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?表15? Record對象load方法參數說明

參數

數據類型

說明

table_path

String

要導入的表。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?表16? Record對象save方法參數說明

參數

數據類型

說明

table_path

String

要創建的輸出表。

? ? ? ? ? ?RecordSet對象使用示例如示例4所示。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 示例4:RecordSet對象使用示例。

import arcpy

arcpy.ImportToolbox("http://myserver/arcgis/services;Geocode")

in_recordset = arcpy.GetParameterValue("GeocodeAddress", 0)

?

附錄

?????? 歡迎大家關注我的收費課程《ArcGIS Pro 2.6和ArcGIS Enterprise學習》,共8小時,有理論有實操:https://edu.csdn.net/course/detail/31690

課程主要包含:

  • ArcGIS Pro2.6學習
  • ? ? ? ? ? ? ? ? ? ? ①GIS中的數據

    ? ? ? ? ? ? ? ? ? ? ②GIS中的坐標系

    ? ? ? ? ? ? ? ? ? ? ③企業級地理數據庫(SDE)設置

    ? ? ? ? ? ? ? ? ? ? ④數據編輯及拓撲檢查

    ? ? ? ? ? ? ? ? ? ? ⑤簡單制圖

    ? ? ? ? ? ? ? ? ? ?⑥空間分析

    ? ? ?2.ArcGIS Enterprise學習

    ? ? ? ? ? ? ? ? ? ①環境部署

    ? ? ? ? ? ? ? ? ? ②二三維服務發布(矢量切片、要素服務、地圖切片、地形服務、三維服務等)

    ? ? ? ? ? ? ? ? ? ③使用及運維(詳細介紹如何確定enterprise部署架構,簡單介紹相應的運維工具)

    ? ? ? 3.開發體系梳理

    ?

    ?

    ?

    總結

    以上是生活随笔為你收集整理的ArcPy常用类介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。