1. 程式人生 > >【ArcGIS操作】1 基礎編輯篇

【ArcGIS操作】1 基礎編輯篇

本內容整理自湯國安、錢柯健、熊禮陽等教授編著的《地理資訊系統 基礎實驗操作100例》。感謝!

文章目錄

1、繪製自定義線、垂線、平行線

工具名稱 工具位置
絕對X、Y 【右鍵選單】>【絕對X、Y】
長度 【右鍵選單】>【長度】
平行 【右鍵選單】>【平行】
垂直 【右鍵選單】>【垂直】

2、平移向量要素

工具名稱 工具位置
移動 【編輯器】>【移動】>【右鍵選單】>【平移分量】

3、旋轉向量要素

工具名稱 工具位置 備註
旋轉 【選單欄】>【自定義】>【命令】>【編輯器】>【旋轉】 旋轉中心預設為幾何中心、按下鍵盤【A】輸入旋轉角度

4、向量要素映象複製、縮放

工具名稱 工具位置 備註
映象要素 【選單欄】>【自定義】>【命令】>【編輯器】>【映象要素】 選擇要素>選擇工具>繪製對稱軸線
比例 【選單欄】>【自定義】>【命令】>【編輯器】>【比例】 選擇要素>選擇工具>拖動滑鼠進行縮放、按下【F】鍵設定【比例引數】、實現要素的單獨縮放

5、以點要素分割線要素

工具名稱 工具位置 備註
在點處分割線 【ArcToolbox】>【資料管理工具】>【要素】>【在點處分割線】 需要輸入點要素和線要素
在折點處分割線 【ArcToolbox】>【資料管理工具】>【要素】>【在折點處分割線】 僅輸入線要素即可,自動識別折點

6、提取線要素的交點

序號 工具名稱 工具位置 工具作用 備註
1 要素轉線 【資料管理工具】>【要素】>【要素轉線 分割線資料 例:“十字交叉”線段分割成4段
2 要素折點轉點 【資料管理工具】>【要素】>【要素折點轉點 提取線段的端點 點型別選擇“BOTH_ENDS”
3 新增XY座標 【資料管理工具】>【要素】>【新增XY座標 獲取點座標欄位 在屬性表中新增X和Y欄位
4 刪除相同的 【資料管理工具】>【常規】>【刪除相同的 剔除重複點要素 需要選擇XY欄位

7、分割多部分要素

序號 工具名稱 工具位置 作用 備註
1 開啟屬性表 【右鍵圖層】>【屬性表】 檢視多部分要素 一條屬性對應多個圖形
2 多部分至單部分 【資料管理工具】>【要素】>【多部分至單部分】 按圖層分割多部分要素 輸入要素圖層
3 拆分多部分要素 【選單欄】>【自定義】>【工具條】>【高階編輯】>【拆分多部分要素】 按要素分割多部分要素 選中要素再點選工具
4 計算幾何 【右鍵屬性表中欄位】>【計算幾何】 欄位重新計算 選中重新計算欄位的計算內容

8、繪製中點連線

序號 步驟 工具 位置 備註
1 選擇中點工具 中點、線 編輯器】>【中點】、【編輯器】>【編輯視窗】>【建立要素】>【線】
2 繪製中點連線

9、線要素的延伸與裁剪

序號 步驟 工具 位置 備註
1 載入高階編輯條 【選單欄】>【自定義】>【工具器】>【更多編輯視窗】>【高階編輯
2 選中作為限制條件的面要素 選擇工具 【編輯器】>【開始編輯】>【選擇】
3 延伸短的線要素 延伸 【高階編輯器】 保持面要素的選中狀態
4 裁剪去面內部和外部的線要素 裁剪 【高階編輯器】 保持面要素的選中狀態,點選要裁去的內部線段或外部線段

10、繪製帶空洞的面要素

序號 步驟 工具 位置 備註
數字化長江整個範圍(完成草圖) 1 數字化長江整個範圍,包括島嶼 編輯器
2 繪製島嶼圖形 整個長江面圖形和島嶼圖形在同一個圖層
3 裁剪島嶼區域 裁剪 【編輯器】>【裁剪】 裁剪前要選中島嶼圖形,選擇【丟棄相交區域】,該工具只能逐個裁剪島嶼圖形,不可一次裁剪多個圖形
數字化長江整個範圍(完成部件 1 數字化長江整個範圍,包括島嶼 完成後右鍵點選【完成部件】
2 繪製島嶼要素 繪製完島嶼後右鍵【完成部件】,最後一個島嶼右鍵【完成草圖】

11、以線要素分割面要素

序號 步驟 工具 位置 備註
方法一:提取面要素邊界 1 提取面要素邊界 面轉線 【資料管理工具】>【要素】>【面轉線】
2 合併線圖層 合併 【資料管理工具】>【常規】>【合併】 輸入資料集為前面的面轉線和原來的線兩個圖層
3 生成分割後的面要素 要素轉面 【資料管理工具】>【要素】>【要素轉面】 輸入要素為合併後的線
方法二:直接分割面要素 1 提取面要素邊界 面轉線 【資料管理工具】>【要素】>【面轉線】
2 生成分割後的面要素 要素轉面 【資料管理工具】>【要素】>【要素轉面】 輸入要素為前面的面轉線和原來的線要素
方法三:直接用分割面工具分割 1 載入分割面工具 分割面 【選單欄】>【自定義】>【命令】>【拓撲】>【分割面】
2 選擇參與分割的線要素 編輯狀態下
3 分割面要素 選擇要分割的面要素圖層

12、數字化面圖形的技巧

序號 步驟 工具 位置 備註
方法一:【裁剪面】 1 繪製整個面範圍 【面】 編輯器
2 設定圖層顯示屬性 【符號系統】、【透明度】 右鍵圖層屬性 符號系統設為無色填充、屬性透明度設為50%
3 裁剪面 【裁剪面】 編輯器 裁剪前要選中整個面範圍、繪製邊界時,起始點和終止點必須在裁剪面的外部或邊上,否則會失敗
方法二:【自動完成面】 1 繪製小圖形 【自動完成面】 編輯器>建立要素 起始點和和終止點必須在當前圖形的內部或邊上,否則會失敗

13、設定欄位別名

序號 步驟 工具 位置 備註
1 新建地理資料庫 右擊資料夾>【新建】>【檔案地理資料庫】 對常規shapefile圖層屬性表字段設定的別名,僅是臨時儲存,關閉屬性表後便不存在,需要將shapefile圖層存入Geodatabase地理資料庫中才能永久性儲存
2 匯入shapefile圖層至地理資料庫 【要素類至要素類】 右擊資料庫>【匯入】>【要素類(單個)】
3 設定欄位別名 在Arccatalog中雙擊資料庫要素類>【要素類屬性】>【欄位】>【欄位名】>【欄位屬性】>【別名】
4 檢視欄位別名 開啟屬性表

14、設定欄位屬性域

序號 步驟 工具 位置 備註
1 建立地理資料庫
2 設定資料庫屬性域 右擊資料庫>【資料庫屬性】>【屬性域】>【屬性域名稱】>【屬性域屬性】>【欄位型別】>【屬性域型別】>【編碼值&範圍】 編碼值中【描述】列表內容將作為後續選項顯示的值,而非具體的編碼值
3 設定欄位的屬性域屬性 【新建要素類】>【欄位名】>【資料型別】>【屬性域】 欄位的資料型別必須與屬性域的欄位型別一致才能引用該屬性域條件
4 檢驗欄位的屬性選擇項 數字化>開啟屬性表>下拉欄位選擇屬性

15、對欄位自定義賦值

序號 步驟 工具 位置 備註
1 建立新欄位 新增欄位 屬性表
2 欄位賦初始值 【欄位計算器】&【計算欄位】 屬性表&【資料管理工具】>【欄位】>【計算欄位】 【解析程式】:Python,【表示式】:“‘ID’+str(!FID!)”(字母+等差數列)

16、按條件計算屬性欄位值

序號 步驟 工具 位置 備註
1 新建分類欄位
2 對欄位進行賦值 【欄位計算器】>【顯示程式碼塊】>【預邏輯指令碼程式碼】>【type=】 def typeFunc(value): if value<0.2 return 1 elif value>=0.2 and value<0.8: return 2 else: return 3 ,type=typeFunc(!value!)

17、合併表格

序號 步驟 工具 位置 步驟
方法一:匯出圖層屬性表 1 匯出屬性表 屬性表>表選項
2 合併表格 追加 【資料管理工具】>【常規】>【追加】 方案型別為NO_TEST,合併完成後兩個表所有記錄都儲存在目標資料集中
方法二:使用合併工具 1 使用合併工具合併表格 【資料管理工具】>【常規】>【合併】

18、按值修改柵格值

方法 工具 位置 備註
條件函式工具 條件函式 【Spatial Analyst】>【條件分析】>【條件函式】
柵格計算器中Con函式 柵格計算器 【Spatial Analyst】>【地圖代數】>【柵格計算器】

19、按像元修改柵格值

序號 步驟 工具 位置 備註
1 柵格轉點要素 柵格轉點 【轉換工具】>【由柵格轉出】>【柵格轉點】 點要素為每個格網的中心點
2 選中待修改值的點要素 按屬性選擇 【屬性表】>【表選項】>【按屬性選擇】 屬性為FID值,開啟柵格要素屬性的源,檢視列數和行數,例如列數和行數為14和14,第8行第6列FID為(8-1)14+(6-1)=103
3 修改點要素欄位值 欄位計算器 屬性表>右擊欄位
4 生成修改值後的柵格圖層 點轉柵格 【轉換工具】>【轉為柵格】>【點轉柵格】

20、按區域修改柵格值

序號 步驟 工具 位置 備註
1 區域面要素柵格 面轉柵格 【轉換工具】>【轉為柵格】>【面轉柵格】 值欄位設定為“FID”,由於生成的柵格資料值為FID,可計算調整為修改的目標值,像元大小與原始柵格一致
2 計算修改的目標值 柵格計算器 【Spatial Analyst】>【地圖代數】>【柵格計算器】
3 修改原始柵格 鑲嵌至新柵格 【資料管理工具】>【柵格】>【柵格資料集】>【鑲嵌至新柵格】 輸入柵格圖層的順序必須先是原始柵格圖層,後新值圖層,該順序由引數“鑲嵌運算子”決定

21、NoData資料處理

方法 序號 步驟 工具 位置 備註
條件賦值 1 用柵格計算器對NoData賦值 柵格計算器 【Spatial Analyst】>【地圖代數】>【柵格計算器】 公式:Con(IsNULL(“dem”),1,“dem”),將NoData賦值為1
設定賦值圖層 1 將NoData賦值,其他值設為NoData 重分類 【Spatial Analyst】>【重分類】>【重分類】 分類類別為1可快速賦值
2 合併圖層 鑲嵌至新柵格 【資料管理工具】>【柵格】>【柵格資料集】>【鑲嵌至新柵格】 輸入柵格圖層的順序必須先是原始柵格圖層,後新值圖層,該順序由引數“鑲嵌運算子”決定
柵格轉ASCII文字 1 柵格轉ASCII文字 柵格轉ASCII 【轉換工具】>【由柵格轉出】>【柵格轉ASCII】
2 更改NoData值 替換 記事本 NoData值預設為“-9999”,但第六行NoData引數必須設定為“-9999”
3 ASCII文字轉柵格 ASCII轉柵格 【轉換工具】>【轉為柵格】>【ASCII轉柵格】 資料型別根據實際柵格資料塊的值型別選擇

22、提取柵格有效邊界

序號 步驟 工具 位置 備註
1 提取三維外邊界線 柵格範圍 【3D Analyst工具】>【轉換】>【由柵格轉出】>【柵格範圍】 輸出要素型別可設定為“LINE”(三維線資料)或“POLYGON”(面數據)
2 提取資料整體範圍柵格 柵格計算器 【Spatial Analyst】>【地圖代數】>【柵格計算器】 公式為“dem”>0
3 範圍柵格轉向量面數據 柵格轉面 【轉換工具】>【由柵格轉出】>【柵格轉面】 取消勾選【簡化面】
4 提取外邊界線資料 面轉線 【資料管理工具】>【要素】>【面轉線】

23、提取柵格獨立格網面

序號 步驟 工具 位置 備註
1 柵格轉點 柵格轉點 【轉換工具】>【由柵格轉出】>【柵格轉點】 欄位設為“VALUE”
2 建立泰森多邊形 建立泰森多邊形 【分析工具】>【鄰域分析】>【建立泰森多邊形】 設定環境處理範圍與柵格資料一樣
錯誤情況 柵格轉面 柵格轉面 【轉換工具】>【由柵格轉出】>【柵格轉面】 具有相同值的會被融合至同一面圖形中,【柵格轉面】工具要求柵格資料必須為整型

24、統一多解析度柵格資料

序號 步驟 工具 位置 備註
1 設定分析環境引數 環境設定 【處理範圍】【捕捉柵格】【像元大小】 基於柵格資料進行空間分析時要保證所有柵格圖層具有相同的空間解析度,統一多解析度一般是統一至低解析度。【捕捉柵格】和【像元大小】設定為與低解析度柵格資料相同,【處理範圍】為高解析度柵格資料本身。
2 生成低解析度柵格資料 重取樣 【資料管理工具】>【柵格】>【柵格資料處理】>【重取樣】 像元大小與低解析度資料相同,重取樣方法可按需要選擇,一般為最近距離法插值
3 調整柵格結構 柵格計算器 【Spatial Analyst】>【地圖代數】>【柵格計算器】 公式為“newraster”(重取樣後柵格資料)*1

25、建立多解析度DEM

序號 步驟 工具 位置 備註
方法一 1 柵格轉高程點 柵格轉點 【轉換工具】>【由柵格轉出】>【柵格轉點】 欄位設為“VALUE”高程
2 建立TIN資料 建立TIN 【3D Analyst工具】>【TIN管理】>【建立TIN】 設定輸入要素類height_field為高程值
3 生成DEM資料 TIN轉柵格 【3D Analyst工具】>【轉換】>【由TIN轉出】>【TIN轉柵格】 取樣距離選項中設定生成DEM資料的解析度
方法二 1 生成多解析度DEM資料 重取樣 【資料管理工具】>【柵格】>【柵格資料處理】>【重取樣】 輸出像元大小設定輸出柵格資料解析度

26、細分柵格

序號 步驟 工具 位置 備註
方法一 1 劃分小柵格 柵格計算器 【Spatial Analyst】>【地圖代數】>【柵格計算器】 公式為"raster"*1,環境設定像元大小,劃分前後的柵格值不變,每個原始柵格被劃分成規定個小柵格
2 重新賦值 焦點統計 【Spatial Analyst工具】>【鄰域分析】>【焦點統計】 鄰域設定,統計型別設定按實際情況
方法二 1 重取樣 重取樣 【資料管理工具】>【柵格】>【柵格資料處理】>【重取樣】 輸出像元大小設定,重取樣技術選擇“BILINEAR”根據實際情況選擇