【技术】ArcGIS详解:如何制作一副精美的中国地图
01
概述
随着信息技术的发展,各地的智慧城市建设都开展得如火如荼。在规划项目中,GIS强大的空间信息处理与分析功能、数据组织管理、可视化与制图都将会发挥极大的作用,GIS数据平台的统一建立,在推进市县“多规合一”工作中可发挥重大作用。
可以将这些数据与其他可用数据合并以创建更多的地图,以全新的方式应用您的地理信息。
ArcGIS越来越注重在制图方面的发展与应用,这里整理怎么通过制作一副中国地图来展示和实践ArcGIS在制图方面的应用。
02
资料获取以及设置投影
本教程使用的数据为万能地图下载器下载的数据,除了这些数据,常见的矢量数据都可以从水经注万能地图下载器中下载。
水经注万能地图下载器
(关注微信公众号“测绘之家”回复“下载器”获取插图所示软件)
资料列表
需要准备的文件有:
bou2_4l.shp:中国政区的线文件(包含了南海的九段线)
bou2_4p.shp:中国政区的面文件
rivers.shp:世界主要河流
cntry02.shp:世界国家面文件
省会城市.shp:中国省会城市点文件
注意:数据的地理坐标系应为WGS84。
关注微信公众号“测绘之家”回复“地图制作”即可获取示例数据件
设置地理坐标系方法如下:
地理坐标系
地理坐标系为WGS84
设置后打开结果
放大图我们可以看到,沿海一带有很多面积很小的岛屿,为了制图的美观,我们需要删掉一些面积小的岛屿,但是在这之前,我们必需把南海诸岛以及台湾周围的岛屿保留下来。
删掉处理
选中过程中按住shift可进行连续选择
在中国行政区的面文件图层上右击选择Selection(选择)->Create Layer From Selected Features(根据所选要素创建图层),将选中的要素创建一个新的图层。
停止编辑,在刚刚产生的图层上右击选择Data(数据)->Export Data(导出数据)…,将选择的要素导出,命名为“南海诸岛及其它岛屿.shp”。
接下来我们就可以删掉面积小的岛屿了,继续进入编辑状态,打开中国行政区的面文件的属性表,打开Select by Attribute(按属性选择)对话框,输入"AREA"=0,点击apply,选中面积为小于0.01的多边形删除。
中国行政区的面文件图层中面积较小的岛屿已经删除
删除结果
03
提取出中国的轮廓线
接下来我们要从政区文件(中国行政区的面文件)中提取出中国的轮廓线。这一步的目的是我们要分开中国在陆地上的国界和在海岸线上的国界,因为这两者在制图的时候是不同的。之所不直接用政区线文件提取轮廓是因为经过一些处理以后用面文件提取会更方便(下面会细说);而不用IDL中的国家(世界国家面文件)是因为ITT提供的世界图是他们所认为的世界图(对比一下中国的藏南地区就会发现,在这个世界图上,中国的藏南地区是直接划给印度的,所以我们不用它,只把它作为底图)。
打开Toolbox->Data Management Tools(数据管理工具)->Features(要素)->Polygon to Line(面转线),将输出文件命名为“中国线.shp”。确保”Identifyand store polygon neighboring information(optional)”选中(保留每条线段两边的多边形信息是下一步提取轮廓线的关键;另外,Feature to Line也能实现面转线的功能,但是没有选项)。
加载轮廓线
打开“中国线.shp”属性表,选中LEFT_FID=-1或者RIGHT_FID=-1的所有要素,这个时候边界上的所有线要素就被选中了。
如前所述的方法,将选中的要素创建图层,并导出成单独的图层,命名为“中国轮廓线.shp”。
创建图层
导出成单独的图层
04
提取陆上国界和海上国界
新建一个点文件(坐标系设为WGS84),进入编辑状态。在辽宁与朝鲜的入海口处、广西与越南的入海口处创建两个点,保存并停止编辑。
创建点文件
创建点后
使用Toolbox->Data Management Tools(数据管理工具)->Features(要素)->Split Line atPoint(在点处分割线)工具,将线在点处打段。
并且在编辑状态下,用Merge(合并)工具将两部分分别合并在一起;并新建一个字段用以区分陆上国界和海上国界。
在点处分割线
这里一定要细心,耐心,不能漏掉祖国任何一个小岛
这种小的断点也要选择完整,不然最后字段类型就不只是两类了
05
提取出九段线
这一步我们从中国政区的线文件(中国行政区的线文件)中提取出九段线。名称是叫九段线,但是实际上在现在地图出版物中都是10段的。这一步比较简单,在编辑状态下选出这10段线,导出成单独的文件,命名为“九段线.shp”。
九段线
到目前为止,我们已经整理出来我们的底图所需要的要素文件:
省会城市(点)
九段线(线)
中国陆_海国界轮廓线(线)
河流(线)
南海诸岛及其它岛屿(面)
中国政区(面)
国家(面)
所有要素叠加结果图
接下来我们对这些要素进行符号化。
06
纸张设置
首先在File(文件)->Page and Print Setup(页面和打印设置)中,将纸张调成横向。进入版面视图,适当调整数据框的大小和位置(上面留出写标题的空间),将地图比例尺改为1:23 000 000。
设置纸张大小
07
设置国界线的符号样式
双击“中国陆_海国界”图层打开Layer Properties(图层属性)对话框,在Symbology(符号)中选择Categories(类别)方式,在ValueField(值字段)中选择国界类型,点击Add all Values(添加所有值)。
双击陆上国界的符号,打开Symbol Selector(符号选择器)对话框,随便选择一种线型符号,点击“Edit Symbol”,打开Symbol Property Editor(符号属性编辑器)对话框。
国界的符号
国界的样式选择
对对话框中点击左下的“+”号新建两层。将线型符号的颜色设为50%灰度,线宽0.5,Line Joins为“Round”。第二层的颜色设为Mango(更多颜色)(RGB 255,211,127),线宽2,Line Joins(线连接)设为“Round”,将Line Propeties中的Offset设为1。类似地,第三层的颜色设为Topaz Sand(RGB 255,235,175),线宽4,Line Joins设为“Round”,将Line Propeties(线属性)中的Offset(偏移)设为2。点击确定,返回Symbol Selector(符号选择器)对话框,可以将刚刚设置的样式保存。
边界线颜色配置
点击确定返回Layer Properties(图层属性)对话框,将海上国界的符号样式设置为:颜色Yogo Blue(RGB 115,178,255),线宽0.4,设置完成后国界线的效果下图。
国界线的效果
然后将九段线的符号样式也设置成陆上国界的样式
08
设置省会城市符号
将省会城市的符号类型设置为“Circle 19”(圆形19),颜色50%灰度,大小6。并右击该图层设置“Label Features”。(标注要素)
设置省会符号
09
设置河流符号样式
使用ArcToolbox(工具箱)->Cartography Tools(制图工具)->Generalization(制图综合)->Smooth Line(平滑线)工具,将河流光滑。”SmoothingAlgorithm”(平滑算法)方法选择BEZIER_INTERPOLATION。
加载河流数据
完成以后设置河流的符号样式为:颜色Cretean Blue(RGB 0,112,255),线宽0.5。为了只让它显示长江和黄河,双击光滑过的河流图层,切换到“Definition Query”(定义查询)选项卡,在Definition Query中输入"NAME" = ‘Huang He’ OR “NAME” = ‘Yangtze’,点击确定。
河流符号样式
10
为数据框设置背景颜色
将世界国家面文件图层颜色改为50%灰色,然后双击数据框“Layers”(图层)打开Data Frame Properties对话框,切换到“Frmae”(框架)选项卡,在“Background”中选择“Lt Blue”,(浅蓝色)确定,此时效果如图:
背景颜色
11
为数据框添加经纬线
双击数据框“Layers”打开Data Frame Properties对话框,切换到“Grids”(格网)选项卡,点击“New Grid…”(新建格网),保持默认一直到Finish(下一步)。接下来点击“Properties…”打开“Reference System Properties”对话框。
增加经纬线样式
在“Axes”选项卡中,取消”Major Division Ticks”和”Subdivision Ticks”中所有的复选框;
在“Interior Labels”选项卡中,取消”Show interior grid labels”复选框;
在“Labels”选项卡中,设置Label的字体为Times new Roman,8号,“Label Offset”为“-2”pts。点击“Additional Properties”打开“Grid Label Properties”对话框,取消“Show coordinate direction labels”复选框,取消“Show zerominutes”和“Show zero seconds”复选框;
在“Lines”选项卡中,点击Symbol,设置经纬线的符号样式为:颜色Moorea Blue(RGB 0,169,230),线宽0.2;
效果图
12
添加北回归线
双击数据框“Layers”打开Data Frame Properties对话框,切换到“Grids”(格网)选项卡,点击“New Grid…”(新建格网),保持默认一直到Finish。点击“Properties…”(属性)打开“Reference System Properties”对话框。
在“Lines”(线)选项卡中设置线型为“Dashed 4:4”,颜色40%灰度,线宽0.4;
设置线型
在“Label”(标注)选项卡中取消所有复选框。
在“Intervals”(间隔)选项卡中如下设置。
设置间隔
点击确定,点击菜单”Insert(插入)”->”Text(文本)”插入“北回归线”四个字,双击这四个字。
插入“北回归线”四个字
效果图
到现在为止,我们的底图就基本做完了,效果如下图所示。
底图效果
13
添加南海诸岛
还有重要的南海诸岛没有放上去,首先插入一个新的数据框,添加如下图层到新的数据框。
增加海南诸岛
然后右键省会城市图层,标注要素。调整新建数据框大小和位置,至九段线显示完整,最终效果如下。
效果图
随后插入比例尺,指北针,设置地图标题,导出300dpi分辨率的jpg格式。
最终效果图
14
总结
至此一张精美的中国地图就制作完成了,感兴趣的小伙伴,也可以自己动手试下,数据我们都放在了微信公众号“测绘之家”,只需私信“地图制作”即可下载,ArcGIS在制图方面的应用还很多,关注我们将不定期整理相关教程呈现给大家。
-----END-----
社群交流 / 原创投稿 / 商务合作
(请添加下方小家微信:mysurvey)
来源:水经注GIS
推荐阅读
【测评】我想买一套进口RTK,高精度测量型GNSS产品我该如何选择呢?
推荐关注
↓↓↓点击下方“阅读原文”查看更多精彩内容...