恰当地放置标注可以使地图更加易懂,更为有用,Maplex标注引擎提供了高级的标注布局和冲突检测方法,帮助我们提高地图上标注的质量。下面这张图是用Maplex标注引擎实现的,这张图中的标注比较多,难免会有标注间或标注与要素间相冲突的情况,下面我们来看看Maplex标注引擎是怎样选择合理的标注位置以及解决标注间冲突的。
图1
一、使用Maplex引擎:
点击ArcMap菜单栏上的Tools—Extensions,勾选Maplex选项;
打开数据框属性,点击General标签,在Label Engine下拉框中选择ESRI MaplexLabel Engine,确定;
在ArcMap菜单栏空白处点击右键,将Labeling工具条调出,在Labeling工具条下拉菜单中选择Use Maplex Label Engine,即使用Maplex标注引擎;
二、标注位置设置
1、图层准备:
在Labeling工具条上点击Label manager工具,打开Label manager对话框,制作“江苏省河流和湖泊分布图”需要使用的图层为前面两个“城市驻地”点图层,“主要河流”线图层和后面两个面图层,需要应用标注的是前面的四个图层。
图2
2、点标注位置设置:
1).将“地级城市驻地”分为两组,一组为南京,一组为其他城市。
2).选中“南京分组”,点击图2中的“SQL Query”按钮,输入公式“"name"= '南京'”,即仅仅对南京进行单独标记;同理,选择“其他城市”分组,输入公式“not"name" = '南京' ”,将除南京外的城市提取出来;
3).设置“南京分组”标注的放置位置,点击图2中的Position按钮,看到点标注的放置位置有十种,分别如图3所示,我们选择第三个标注在点的东北方向。
图3
4).设置“其他城市”分组的标注放置位置,选择图3中的最后一种方式Best Position,即系统自动从前八种方式中选择最佳的标注放置位置。同样设置“县城驻地”图层的标志位置为最后一种。
3、线标注位置设置:
将“主要河流”图层分为三组,分别为“一级河流”、“二级河流”、“三级以下河流”,线要素的标注位置有五种放置方式可供选择,分别为Regular Placement、Street Placement、Street Address Placement、Contour Placement、River Placement。我们选择第五种“河流放置”。具体的标注放置方式还有两种,如图4,三个河流分组均选择第二种“偏离曲线的曲线放置”方式。
图4
4、面标注位置设置
“湖泊”面要素的设置,面要素的标注位置有四个可选方式,分别为:Regular Placement、Land Parcel Placement、River Placement、Boundary Placement,此处选择第一种“常规放置方式”,具体有以下五种方式,我们选择第三种“曲线放置”方式。
图5
三、标注高级放置设置
点击图2中的Properties按钮打开Placement Properties对话框。
1、Label Position选项卡
在这里对“一级河流”标注的样式进行设置,因为长江比较长,所以对其进行不间断地重复标记,将RepeatLabel前面的可选框勾上(图6),在Interval按钮处可以设置标注之间保留的间隔距离。
图6
另外,如果想要标注字符之间有一定间隔,可将Spread characters前面的可选框勾上。综合显示结果见图7。
图7
2、Fitting Strategy选项卡
这里可以对标注的自适应策略进行设置,见图8。
图8
1).“湖泊”的有些标注比较长,因此设置其换行排放,将Stack Label勾选上,点击Options,打开Label Stacking Options对话框,设置其换行的标志为“空格”,其余设置不改变。另外,在“湖泊”图层的属性表中将长标注的要素name字段在需要换行的位置留出一个空格,结果图如图9。
图9
2).“三级以下河流”比较多,标注排列密集,看起来比较混乱,这时候可以通过减小字符大小来使地图美观,即勾选Reduce font size,效果图件图10 。
图10
3、Conflict Resolution选项卡
这里用来设置当标注相互冲突时的解决方案,见图11。
图11
1).标注和要素之间不可避免会有相互冲突,互相遮盖的情况,而我们这里是不允许“湖泊”图层被其他标注遮盖,因此对“湖泊”图层进行设置,选择Feature weight为4,见图12。后面还会讲解直接对所有图层进行设置的工具。
图12 a 权重设置为0
图12 b 权重设置为4
2).当有标注发生冲突时,系统会自动将一些标注隐藏,而我们不想要“地级城市驻地”或“县城驻地”隐藏,因此将这两个图层的Never remove选项勾上。
3).第三个选项是移除重复标注的,我们这里没有重复标注的情况,因此不予考虑。
四、标注优先级设置
1、不同图层之间标注的优先级
用Labeling工具条上的Labeling Priority Ranking工具进行设置。这里我们做如下设置,如果标注之间有相互遮挡的情况,在图13中排列靠后的图层标注会被自动隐藏。
2、图层和标注之间的优先级
用Labeling工具条上的Label Weight Ranking工具进行设置。在这里进行设置比在ConflictResolution选项卡中设置更加直观。在这里我们如图14进行设置。“地级城市驻地中的南京”和“湖泊”图层权重最高,不可以被其他图层标注覆盖。
图13
图14