在线客服
客服热线
023-86794476
客服组:
在线客服
服务时间:
9:00 - 18:00

023-86794476

24小时咨询热线

渝ICP备18006836号    Copyright © 2018 重庆同汇勘测规划有限公司 版权所有   网站建设:中企动力 重庆

友情链接:

Information Center

资讯中心 

【同汇小分享】ArcGIS中62个常用应用技巧汇总

分类:
同汇资讯
作者:
来源:
2019/08/14 10:39
浏览量
【摘要】:
ArcGIS中62个常用应用技巧汇总

一、计算面积  ( 可以帮我们计算小班面积 )

添加 AREA 字段,然后右键点击字段列,然后点击 CALCULATE VALUES; ---> 选择 ADVANCED --》把下面的代码输入,然后在最下面 = 处写 OUTPUT 点击 OK 就 OK 了。 

Dim Output as double

Dim pArea as Iarea

Set pArea = [shape]

Output = pArea.area

 

二、计算长度  ( 可以帮我们计算林带长度 )

同上添加 LENGTH 字段,然后右键点击字段列,然后点击 CALCULATE VALUES; ---> 选择 ADVANCED --》把下面的代码输入,然后在最下面 = 处写 OUTPUT 。点击 OK 就 OK 了。 

Dim Output as double

Dim pCurve as ICurve

Set pCurve = [shape]

Output = pCurve.Length

 

三、小班升序排列:

同上添加小班号字段,然后右键点击字段列,然后点击 CALCULATE VALUES; ---> 选择 ADVANCED --》把下面的代码输入,然后在最下面 = 处写 OUTPUT 。点击 OK 就 OK 了。

Static i as long

Dim Output as string

i=i+1

Output =i

 

四、村界切割小班

选择 -> 根据位置选择 , 小班 are are crossed by the outline of 村面 , 然后选择 -> 设置可选择图层为村面。用追踪工具,任务为切割多边形要素,进行切割

 

五、字段赋值

选择 -> 根据位置选择 , 小班 are within 村面。打开属性表显示选中的,选择一整列计算字段值对整个字段赋一个常量或,勾选高级加求变量代码

 

六、拓扑检查

ArcCatalog 选要进行拓扑检查的文件夹右键 -> 新建个人 geodatabase-> 新建要素集 -> 导入要素类 -> 新建拓扑 (导入要拓扑的图层) 。ArcMap 中打开由拓扑规则产生的文件, 编辑状态下 利用 topolopy 工具条中给出的错误记录信息进行修改 。搜索要修改的错误 -> 右键 ( 平移到 ) 选融合或新建等等。( 用 P+ENTER 组合键加快修改速度 ) , 修改完后右键图层名 -> 选导出数据

 

七、投影和投影转换

ArcToolbox-> 数据管理 -> 投影和投影转换 ->project , batch project 。更多干货敬请关注:GIS前沿(地理变换中加入之前创建自定义地理变换文件)

 

八、合并图层

ArcToolbox-> 数据管理 -> 常规 ->merge

 

九、其他格式文件转 shpfile

ArcToolbox-> 转换工具 -> 到 shpfile

 

十、 dxf 批量转 shp

用 ArcCatlog 打开全部选择右键转为 shp

 

十一、批量定义投影

ArcToolbox-> 示列 ->batch define coordinate system 9( 可以用来批量矫正跑偏的卫片 )

 

十二、校正

提前可选取捕捉选项校正进行仿射校正

 

十三、属性表多项查询

" 村 " =6 AND( " 优势树种 " = '150  落叶松 ' OR " 优势树种 " = '491  榆树 ' OR " 优势树种 " = '530  杨树 ' OR " 优势树种 " = '535  柳树 ' )

 

十四、数据库挂接

根据两属性库相同字段,相同值连接库文件 ( 新库中只保留与旧库的公共字段, Arcgis 挂接时编辑器一定要打开,挂接完需要导出数据生成成果文件。注意 : 从 Arcgis 导出 excel 表修改数据时,容易串行,此时只要保留两表中的共字段,然后用以上方法把数据库挂接回去就可以了,挂回去的库会在相同公共字段的地方进行内容替换 )

注意:一般情况下公共字段用乡 *1000000+ 林班 *1000+ 小班号得出,原表可以在 Arcgis 中添加字段,然后计算字段值求得,要挂接的数据库可在 VF 中增加字段,用 repl  公共字段名  with  乡 *1000000+ 林班 *1000+ 小班号  all  填充。

 

十五、裁切

利用矩形对栅格数据裁剪 :ArcToolbox 中, datamanagement>raster>clipInputRaster 中选择被裁剪的栅格数据,设定好矩形四个顶点即可

 

十六、小班删除和融合

小班内部删除相当于减少面积,外部删除去掉地块。小班内部融合相当于面积不变。

 

十七、 ArcGIS 中影像图配准(校正扫描地图)

栅格配准 - 根据地图坐标添加控制点, x= 经度去掉前两位数带 号后加 3 个零, y= 纬度后加 3 个零(如 21575 为 575000,5357 为 5357000 )。选二次多项式,选择校正,选择校正后的数据类型和名字

 

十八、 ArcGIS 工程空间参考第一个加的图层。

 

十九、字段值显示不同颜色

打开图层后,右键单击图层, properties 里面, symbology ,采用 categories 分类,用 unique values ,右边的 value field 选取你说的那个“图斑的属性”,添加所有值

 

二十、线图层和面图层之间转换

数据管理工具 -> 要素 -> 要素到多边形,多边形到要素

 

二十一、融合后全部打散

ArcToolbox-> 数据管理 -> 属性 ->mergemultipart to singlepart

 

二十二、图层 关系处理

ArcToolbox-> 分析工具 -> 叠加 ->   Erase ( 图层擦除指根据参照图层的范围大小,擦除参照图层所覆盖的输入涂层内的要素。)

ArcToolbox-> 分析工具 -> 叠加 -> Updat e ( 输入的图层中被修正图层覆盖的那一部分的属性将被修正图层的属性代替,注意在更新时输入图层必须透明)

ArcToolbox-> 分析工具 -> 叠加 -> Symmetrical difference ( 获得两个图层叠加后去掉其公共的区域的图像,新生成的图像的属性也是综合两者的属性而产生的)

ArcToolbox-> 分析工具 -> 提取 ->Clip 得到裁切要素区域范围中输入图层的数据

ArcToolbox-> 分析工具 -> 叠加 -> Intersect   交集操作是通过叠置处理得到两个图层的交集部分,并且原图层的所用属性将在同时得到的新的图层显示出来。

 

二十三、选择性导出数据生成新图层

选中要生成新图层的数据 , 源图层右键,数据,导出数据,选择选中的要素,修改图层名,确定(同样适用于选择性导出 dbf 文件)

 

 

二十五、内容列表区图层文件拷贝

一个打开工程中内容列表区的图层文件全部复制拷贝到另一个打开工程的内容列表中,在源工程内容列表区中选中要复制的图层文件上右键复制,在目标工程内容列表区中图层上右键粘贴图层文件。

 

二十六、快捷键

ALT+R 键然后 S 键   可以帮助你快速保存图层文件。ALT+R 键然后 G 键同样可以快速融合文件。CTRL+F6 捕捉顶点, CTRL+F8 捕捉边线

注:

地方林业局在最近几年有电子版的资料,但是这些资料部分还是“北京 54 坐标系”,与现在大家统一用的“西安 80 坐标系”不同。如果我们想利用这部分资料做参考,大家可以先把“北京 54 坐标系”做一次投影转换转为“西安 80 坐标系”然后再利用小班和影像做一下配准。就可以得到我们想要的“西安 80 坐标系”。  具体操作步骤在上面的操作方法里面都有。

 

二十七、 GPS 和电脑连接、数据传输、坐标点成图

MapSource 客户端软件和 GPS 驱动程序安装

安装好驱动和 MapSource 程序,用 GPS 自带数据线和 GPS 连接好,(驱动程序和 MapSource 程序都在 GPS 附带光盘里)

MapSource 参数设置

MapSource 编辑 -> 首选项 -> 位置   用户定义的格网,用户定义的地图基准。属性进行设置,具体参数设置和当地林业局 GPS 参数设置一样。

MapSource 数据接收和保存

传送 -> 从设备接收,接收内容一般选航点。文件 -> 另存为保存路径文件名,文件类型为默认 .gdb (这是 GPS 数据库和 GPS 设备上的数据一致,以后就可以拔掉 GPS 直接打开这个 gdb 文件进行操作相当于连接上 GPS 操作);同样文件 -> 另存为 .TXT 文件( gdb 文件的 txt 形式)。

Excel 获取坐标点

Excel 中数据 -> 导入外部数据找到保存的 txt 文件,下一步 -> 选分隔符,再下一步选中 “ 空格和其它 ” 确定(保存的 txt 文件导入 Excel 中),其中 Name 列为坐标点号, Description 列为打点时间,正常情况 Position 列为坐标点,得到了坐标点。

坐标点成图(分 1.0 成图和 ArcGIS 成图两种方法)

1.0 成图:

如果参数是严格按照上面 MapSource 参数设置中的步骤设置的话,坐标点可以直接上图。在 Excel 中新建三列分别为 id , x , y ,其中 id 为一个图中的同一地块所有坐标点共同 id 号(同一块地 id 值相同如都设为 1 ,另一块地 id 值则都设为 2 )。然后用 1.0 点成面或线再加上属性库就得到 GPS 打点形成的图层。

ArcGIS 成图:

在上面的“二十四。ArcGIS 根据坐标点生成面图层和线图层”中有详细描述。

 

二十八、另外一种坐标点成图方法(需要用到工具 ->Add XY Data )

1 、将数据导入到 Excel 里面,总共有两列 X , Y (列名为 X , Y 即可),下面对应 x , y 坐标数据即可,将文件保存成 *.xls 或者 *.dbf 文件。

2 、 ArcGis 下面,菜单工具 - >Add XY Data 工具 ( 可以同时上多个地块,不同地块中间用空行分隔,导入 Excel 中编辑完点号,再导出 Txt 文件,编辑为成面图层的点文件 ) 。这时会形成一个新图层,所有的点都添加进来了,但现在添加进来的点由于没有 objectID 或者 FID ,现在图层不具备 *.shp 图层的大部分功能,如点的选择,编辑,关联,属性等操作。

3 、在刚才生成的图层上点右键,选 data-expot data …,导出成 .shp 文件。

4 、利用 write features to Text file 工具   生成 txt 文件,这个文件主要是描述各个点的坐标和格式化用的 . 将 Point  改成 Polyline 或 Polygon ,即可满足连接生成线和面。

5 、利用 Create Features From Text File 工具导入刚刚你生成的并改 Polyline 或 Polygon 的 txt 文件        

TXT 文件格式如下:

point

1 37374000 2516000

2 37375000 2516000

3 37376000 2516000

4 37373000 2515000

End

 

二十九、中央经线、中央经线算法

中央经线:每一个 6 度或 3 度分带中间的经线称为中央经线,我国领土跨 11 个 6 度投影带,即第 13~23 带。我国领土跨 22 个 3 度投影带,即第 24~45 带

6 度带中央经线算法:当地中央经线 =6* 当地带号 -3 。(适用于 1:2.5 万和 1:1 万地形图)

3 度带中央经线算法:当地中央经线精度 =3* 当地带号。(适用于 1:1 万地形图)

6 度分带:从 0 度经线(即 0 度经线)开始自西向东每个精度 6 度一个投影带,全球共分 60 个投影带。

当地所处带数 = 当地东经整度数 /6 取整数加 1 。.

3 度分带:从东经 1.5 度经线开始,每隔 3 度一带,全球共分为 120 个投影带。当地所处带数计算方法同上

 

三十、高斯-克吕格投影

高斯-克吕格投影以 6 度或 3 度分带,每一个分带构成一个独立的平面直角坐标网,投影带中央经线投影后的直线为 X 轴(纵轴,纬度方向),赤道投影后为 Y 轴(横轴,经度方向),为了防止经度方向的坐标出现负值,规定每带的中央经线西移 500 公里 ,即东伪偏移值为 500 公里 ,由于高斯 - 克吕格投影每一个投影带的坐标都是对本带坐标原点的相对值,所以各带的坐标完全相同,因此规定在横轴坐标前加上带号,如 (4231898,21655933) 其中 21 即为带号,同样所定义的东伪偏移值也需要加上带号,如 21 带的东伪偏移值为 21500000 米 。六度带自 0 度子午线起每隔经差 6 度自西向东分带,带号依次编为第   1 、 2 … 60 带。三度带是在六度带的基础上分成的,它的中央子午线与六度带的中央子午线和分带子午线重合,即自   1.5 度子午线起每隔经差 3 度自西向东分带,带号依次编为三度带第   1 、 2 … 120 带。我国的经度范围西起 73 °东至 135 °,可分成六度带十一个,即 13-23 带。各带中央经线依次为 75 °、 81 °、 87 °、 …… 、 117 °、 123 °、 129 °、 135 °,或三度带二十二个。六度带可用于中小比例尺(如   1 :250000 )测图,三度带可用于大比例尺(如   1 :10000 )测图。

 

三十一、地理坐标系和投影坐标系

地理坐标系( Geograpic Coordinate System, 简称 GCS )和投影坐标系( Projected Coordinate System ,简称 PCS )。投影坐标系统是根据某种映射关系,将地理坐标系统中由经纬度确定的三维球面坐标投影到二维的平面上所使用的坐标系统。每一个投影坐标系统都由一个地理坐标系统投影转化而成。投影坐标系=地理坐标系+投影过程。

 

三十二、导出图层小班坐标点并整理

ArcToolbox-> 示列 -> 数据管理 -> Write Features To Text File (从图层导出坐标点)

其中 Intput Feature  输入想要导出坐标点的图层文件, Output Txtfile  输入导出路径和文件名(文件名要加 .txt 后缀),

导出格式为:

Polygon

0 0

0 700680.0 5247849.0 0.0 0.0

1 700676.0 5247846.0 0.0 0.0

2 700603.0 5247885.0 0.0 0.0

3 700609.0 5247891.0 0.0 0.0

4 700680.0 5247849.0 0.0 0.0

END

打开 Excel 数据 -> 导入外部数据,选分隔下一步,选空格,其他下一步。Txt 文件分列导入到 Excel 中,再把需要的坐标点文件复制,在目标 Excel 中右键选择性粘贴,选中转置,把一列坐标点拷贝成一行坐标点用来作为纸质文件。(可以用 Excel 中的格式刷制表)

 

三十三、 Arcgis 出图

要出图的所有图层文件加入工程中, Arcgis -> 视图 -> 版面视图 -> 改变版面布局 -> 常规下选择一种版面。可直接对版面编辑 。

 

三十四、小班号林班号和地类在图上以分数形式标出

图层右键 -> 属性 -> 标注 -> 表达式,“ [ 林班号 ] & "--" & [ 小班号 ] &chr(13) & "--------" &chr(13) & [ 土地种类 ] ”

 

三十五、在图层上插入常用的工具

Arcgis -> 插入 -> 图列、指北针、比例尺、文字比例尺;其中插入对象可以把你的坐标点等以文本、 word 、 excel 或其它形式显示在图层上;插入图框,并设置图框的投影坐标系,加入要在局部显示的图层,在局部以小地图形式全局显示图层。

 

三十六、 建立网格

1 、在图层窗口单击右键,点击 “Data Frame Properties” ;

2 、选择 “Grids” 选项卡,点击 “New Grid” ;

3 、选择要建立的 Grid 类型可建立经纬线格网或坐标单位格网,点击 “ 下一步 ” ;

4 、设置线型、风格大小等,点击 “ 下一步 ” ;

5 、设置字体等,点击 “ 下一步 ” ;

6 、设置属性等,点击 “Finish” 完成网格的创建。

备注:生成的 Grid 要在版面视图中才可以看见。

 

三十七、 Arcgis -> 文件 -> 导出地图,导出已经完成并准备打印的电子版地图。(出图可以分为卫片出图,地形图出图,只要在 Arcgis 中加入卫片或地形图就可以)

 

三十九、删除单元格值为空的行,注意删除一行默认为下方单元格上移,并且行号没有丢失

Sub Macro0()

    Dim i, x As Integer

 x = 2

 

 For i = 1 To  2 000

 

 If (Worksheets(" 杨树 ").Cells(x, 2).Value = "") Then

 Worksheets(" 杨树 ").Rows(x).Select

 Worksheets(" 杨树 ").Rows(x).Delete

 Else

 x = x + 1

 End If

 

 Next i

End Sub

 

四十、 生成 网格

arctoolbox 中 data management->feature class->create fishnet 可以生成需要的网格

 

四十一、由小班生成村界,把一个村界线范围内小班全部融合形成一个村界,把所有村(林班)全部融合形成乡镇界,把所有乡镇界全部融合形成旗县界。

 

四十二、坐标点是相对当地中央经线的地点值,是 6 度或 3 度分带范围内。经纬度是绝对的,在全球一个经纬度对应唯一一个地点。两者切换时在 Arcgis> 视图 > 数据框属性 > 标准选项卡中的地图单位,米是坐标点单位,度分秒是经纬度单位。

 

四十三、经纬度上图

用 MapSource 导出一份样本 ( 经纬度 txt 文件 ) ,在 excel 中打开,用目标经纬度替换掉样本,保存。再用 GPSBabel 转换软件,把 txt 文件转为 mps 文件,用 MapSource 打开,设置参数,导出坐标点 txt 文件。直接用上面说到的 Arcgis 直接成图方法。

 

四十四、坐标点导航

用 MapSource 导出一份样本 ( 坐标点 txt 文件 ) ,在 excel 中打开,用目标坐标点替换掉样本,保存。再用 GPSBabel 转换软件,把 txt 文件转为 mps 文件,用 MapSource 打开,设置参数,选择数据传输,输出到 gps 中。

 

四十五、在 MapSource 中选中图形点复制,然后在 excel 中粘贴。得到部分目标坐标点。

 

四十六、 ARCGIS 从源图层复制要拷贝的数据,然后拷贝到目标图层;注意在数据量不大的时候,可以替代图层合并,要把目标图层相同位置数据删除后,再进行拷贝。

 

四十七、随机函数:Rnd*(B-A+1)+A 。

四十八、公顷面积:[ 小班面积 ] /10000

四十九、小班排号:Static i

i=i+1

i

 

五十、亩面积:[ 小班面积 ] /10000 *15 。

 

五十一、出现双线,删掉小班,用追踪自动完成一圈。

 

五十二、 Arcgis 建立 投影坐标系统 时 Xian_1980_GK_CM_117E 和 Xian_1980_GK_Zone_21N 是不加带号的投影坐标系统;Xian_1980_GK_Zone_20 是加带号的坐标系统。

 

五十三、经纬度转坐标点

1.   把 GPS 打的经纬度点复制到 Excel 中两列为纬度经度 , (每个小班用空行分开);然后将 Excel 另存为 .CSV 文件。

(注意:CSV 文件中经纬度前不能加点号)

2.   打开 GPSBabel 软件 “ Input Format ” 中选择数据源格式为 Comma separated values “ Output Format ” 中选择转换目标数据文件格式为 Garmin Mapsouce - gdb ;FileName 中选择输入和输出的路径。

3.   用 Mapsouce 打开转换好的 GDB 文件,在 Mapsouce->Edit->preferences->Position->Grid 和 Datum 选择 User Defined 。Grid 的 Roperties 设置当地中央经线;Datum 设置当地 dx , dy , dz 和 df 参数。

然后另存为文本文件。

4.   在 Excel-> 数据 -> 导入外部数据 -> 导入数据,注意分隔符号要选中空格。(注意:这里最后再把 Excel 中经纬度前的坐标点号拷过来)

五十四、工具 -> 添加 XY 数据可以在 Excel 中建好属性表,表里第一列标出小班序号,每个小班重新排序号,在坐标点后加两列具体如下:(如果首列不是以 0 开头,让首列每一格减 1 )

上表色部分浅蓝色部分是中间过程减去 1 后可以删掉。最后导出 TXT 文件,再全部替换掉多余空格,加 Polygon 和 END 每块地第一列复制到最后一列使小班闭合。然后用于坐标点成面图层。以上两种颜色为两小班。(点图层也可以用以上方法)。

 

五十五、 M 50F 034042_ 资源三号卫星 _2_101_20130604.tif

 50-30=20 度带, 34 纵向排列, 42 横向排列, 20130604 日期。

 

五十六、 A RCGIS 中使用线图层分割面图层

使用 A 图层分割 B 图层,操作步骤如下:

1 、打开 Editor 编辑工具条,单击 Start Editing 开始编辑。

2 、调出 topology 拓扑菜单。

3 、全选线层

4 、点击拓扑工具条的工具构建要素( construct features )。

5 、在弹出的对话框中选择第三个“使用选择集切分目标图层中的已有要素”( split existing features in target layer using selection ),点确定后,自动按线边分割面层,完成操作。

 

五十七、用 21 度带包含 20 度带部分、切割 20 度带面,可以包含 21 度带部分的 20 度带图层。

五十八、如用上期或其他参考数据,数据位标准库的,只需在标准库中新添加汉子字段在数据库内部字段之间拷贝就可以。

五十九 、如在二类有下拉数据库和 Arcgis 之间拷贝数据,需用 VF 替换两图层的数据库中相关字段就可以,其中 FID 不可以在 VF 中做公共字段,需把 FID 拷贝到一个相同数据类型的字段中作为临时公共字段,等做完公共字段后再删除这个临时字段。

close all

CLEAR

SET TALK off

SET MENUS OFF

SET STATUS off

SET SAFETY off

SET SCOREBOARD off

sele 1

use I:-23.dbf

inde on  小班号  to a

sele 2

use I:-23 呼和诺尔镇二类面 .dbf

set relation to  小班号  into a

repl  原小班号  with a-> 原小班号  for  小班号 =a-> 小班号

sele dist abc from aaa into table bbb

 

六十、如二类软件没有下拉,可单把数据库备份,再把没有下拉的 shp 文件加上数据字典,然后再把数据库拷贝回来。这样即实现了数据字典更新和加下拉还不会让数据丢失。

 

六十一、批量删除属性库字段

arctoolbox-data management tools-fields-delete field

六十二、图形和库的连接

分析工具 -> 叠加 -> 空间连接,可以实现 VF 公共字段值不一样时两个图形和库文件的连接