第九章 展示分析结果
项目现在已经进入收尾阶段.你已经设计并完成了研究区数据的建立, 执行了一系列的分析任务来确定了一些满足选址条件的地块.
现在, 你需要记录下你的分析结果. 这通常是用图形显示(地图)和结果描述(报告)来完成的.
在表达结果时你需要很好地设计和布局. 精美的地图和组织得很好的报告显然有助于表达你的意图, 给观众留下深刻的印象, 同时提高你的结果的可信度, 从而更容易被接受.
本章将讨论设计地图和报告的一些重要元素:
地图是什么??
地图是地球表面(一部分)的图形表示. 它通过使用符号的使用和排印手段来表达信息, 并使之更容易理解, 更吸引人.
一幅地图通常包含一系列的主题(COVERAGES). 另外还有帮助阅读者理解的描述性信息. 其主要的和基本的元素包括:
地理特征: 地理数据库中的COVERAGE特征
制图元素: 增进地图的可读性
符号的使用:
地理特征和制图元素都使用不同的符号来绘制表示.常用符号的种类如下:
符号定义: 通过一系列的参数来定义符号. 通用的有:
另外,不同的符号还有一些不同的参数. 如文字符号还有:
符号文件: ARC/INFO中使用符号文件来保存符号的定义. 以不同的数字标号来表示不同的符号. 如在缺省的符号文件(PLOTTER.LIN)中, 31号是绿色的,0.05英寸的虚线.ARC/INFO提供了几套线型文件.
当前符号: 由当前的符号特征设置决定当前的符号. ARCPLOT进程中, 你可以修改当前符号的特征, 改变当前的符号, 或从另外的符号集中选址采用新的符号.
四种符号(线条, 标识, 阴影, 文字)都只能够有一个当前符号. 当你开始ARCPLOT时, 系统使用缺省的符号集中的缺省符号作为当前符号. 缺省的符号集文件为: PLOTTER.LIN, PLOTTER.MRK, PLOTTER.SHD, PLOTTER.TXT. 每个文件包含4种颜色的25种不同模式的100种符号. 缺省的符号集文件实用于4色绘图仪.
符号编辑器 系统提供的4个符号编辑器允许你图形化地选址和编辑当前的符号. ARCPLOT下的LINEEDIT, MARKEREDIT, SHADEEDIT, TEXTEDIT命令可以调用编辑器.
有效地使用符号: 你所使用的符号直接影响到地图信息的交流. 在制作地图时考虑以下问题:
颜色的使用: 不同的颜色用于表示特征之间的质的区别; 而灰度和同种颜色的不同填充模式则用来反映同种之间量的区别. 例如, A省用蓝色, B省用黄色来表示它们是不同的省份(质的区别). 但是, 如果你所要显示的是A省失业率高于B省(量的变化), 则应该使A省灰度比B省大, 以显示这种量变.
通过选用恰当的不同颜色, 可以明确不同特征之间质的区别, 突出地图的整体显示效果. 但是, 过于极端的颜色会歪曲数据值之间的差异, 使地图难以阅读. 还有, 颜色本身是有含义的, 可以引出褒义或贬义的判断.
选择颜色或灰调时必须仔细.屏幕上看来很好的色调打印出来效果不一定好. 实填充的图案在使用笔式绘图机绘制时非常废时间, 而且可能引起一些问题. 不同设备所能够使用的颜色数量也是不相同的. 模式的选择: 不同的模式可以帮助阅读者区分不同的区域. 但要注意, 有些模式之间较难区分. 选用点和线模式时要当心. 它们放在一起时也许很容易区分, 但杂乱分布时也许就难以区分了. 同样, 使用笔式绘图仪时少用密的填充方案.
制作生成地图的步骤
在对地图要素和符号代号有了初步的了解后, 你可以开始制作自己的地图了. 制作地图的主要步骤如下:
第一步: 确定地图的目的和要求
在制作地图之前, 你需要回答三个问题: 首先, 为什么要制作本地图? 其次, 是为谁而作的? 最后, 地图将怎样展示使用? 总的目标是要确定地图的范围, 确定地图的目的, 然后确定制作地图的步骤.
练习:
制作我们的实验项目最终地图之前, 我们首先要确定要包括哪些信息. 听众将是大学里几个系组成的院委员会.
我们的地图需要强调候选的地址, 同时还需要显示研究区的边界, 河流, 排污管道, 土壤虽然是分析因子, 但是并不需要显示出来. 相反地, 委员会需要看到这些候选地址和已有道路之间的关系.
因此, 就我们目前所拥有的COVERAGE来说, 最终的地图将主要包含: ROADS, FINALCOV, TEMPLATE.
第二步: 确定地图大小和比例尺
地图尺寸和比例尺取决于地图的目的和预期的观众.
输出产品的尺寸和介质: 研究表明, 为使地图更美观, 理想的尺寸或外观比例(宽高比)应为4:3. 地图的大小显然根据它的目的不同而不同. 用来展示的地图尺寸显然要比较大, 而提供给委员会每个成员的地图尺寸显然应该和最终报告的页面尺寸一致.
除地图的目的和计划用途外, 地图的种类将取决于你可以使用的输出设备. 最常用的输出设备包括显示屏, 绘图机, 以及POSTSCRIPT设备. 选择决定绘图介质(图纸或透明纸, 薄膜)也是非常重要的. 必须根据你的需要来考虑采用不同的手段和介质. 在屏幕上显示很完美, 并不保证在图纸或薄膜上输出后也完美.
输出介质可以根据功能和质量来进行分类. 显示屏通常用于工作进程中或用来测试显示布局情况. 它也能够快速地显示局部视图, 整个地图, 以及图形查询结果. 屏幕上显示的内容可以直接输出到激光绘图仪或POSTSCRIPT设备中, 通常称为屏幕复制.
在完成最终地图设计后, 可以将之保存为一个图形文件. 图形文件可以通过绘图仪输出, 也可以再用屏幕显示. 如果地图需要复制, 或印刷, 可以采用其它输出显示, 如POSTSCRIPT, SCITEX.
比例尺: 根据实际需要, 地图是按比例显示绘制的. 选择适当的比例尺, 可以使地图清楚地显示表达重要的信息. 而地图尺寸要求在一定程度上限制了你可以使用的比例尺.
地图的最佳比例尺取决于你原始资料的分辨率, 以及你所需要表示的详细程度.例如: 1:100000地图上1平方厘米代表实际地面上的1平方公里, 而在1:10000的地图上则代表地面10000平方米.
一幅地图上也可能包括不同比例尺的视图, 你必须清楚地表示出各视图的比例尺.
第三步: 设计地图布局
在知道你的地图将要展示什么和确定地图的物理参数后, 现在应该进行地图布局的设计了.
视觉平衡: 地图元素可以有非常多的安排方法来达到视觉平衡. 正确地使用颜色, 模式,代号, 可以帮助你达到你的设计目的.在进行最终地图设计的时候, 一定要记住, 你希望读者的眼光停留在哪里.
粗略地绘制出布局设计, 移动其主要元素, 如图面, 标题, 比例尺, 图例框, 知道你找到一个很好的视觉平衡效果. 在地图元素的安排问题上没有唯一的答案. 通常, 只有通过反复试验才能够达到总体的平衡效果.
很多人舍不得把时间和精力花在地图布局设计上. 实际上, 花在这上面的时间是值得的, 你绘制出的地图将易于阅读和理解, 这样就增加了你的分析的说服力. 练习: 最终地图的布局设计.
练习: 最终地图的布局设计
我们现在已经有研究区地图的模板. 它包含边框线, 标题条, 指南针, 比例尺声明. 使用模板可以节省时间和金钱. 你所需要做的只是添加新的标题, 绘制COVERAGE特征.
在网格纸上布局你的地图是一个不错的方法. 你可以准确地知道每个地图元素在图纸上的位置. 因为在绘制地图时候, 你需要在命令中指定这些位置. 如: 图例框的左上角位置, 标题条左下角位置, 等等.
第四步: 准备附加的数据
在制作地图之前, 你需要准备所有需要用到的除COVERAGE之外的数据或文件. 这些工作主要是关于与你用什么符号代号来表示各种地图特征. 例如, 本图中, 你也许要使用蓝色线条来绘制河流, 红色线条来绘制道路. 这些符号并没有储存在COVERAGE中, 你在制作地图时才指定它们. 通过这种方式, 你可以用不同的符号来绘制同样的特征. 另外, 现在你也许希望制作自己的符号. 这一步通常包括两件任务:
根据属性值来指定特征符号代号: 绘制COVERAGE的最简单方法是使用同一种符号来绘制所有特征. 例如, 你可以指定所有的道路都用相同的红色线条来绘制. 如果你只是用来显示所有道路的位置, 这种绘制方式也是可以接受的. 但是, 当你进行道路分类(如铺面的和半铺的), 你需要用不同的符号来表示不同的种类. 你可以利用特征的一项属性值来指示用哪个符号来绘制这个特征.
用属性值来指代特征符号代号可以有多种方法. 你可以将属性值存储于特征表中. 例如, 下表中RD-CODE项中1代表铺面的道路, 2代表半铺面的道路. 我们可以用这个项来指定所使用的线型代号.
ROADS#
|
ROADS-ID
|
RD-CODE
|
1
|
1
|
1
|
2
|
2
|
2
|
3
|
3
|
2
|
4
|
4
|
1
|
5
|
5
|
2
|
6
|
6
|
1
|
Usage: ARCLINES <cover> {item | symbol} {lookup_table}
Example: ARCLINES ROADS RD-CODE
另外, 你也可以在属性表中添加一项来专门存储各记录在绘制时将使用的符号代号(如, SYMBOL项). 如下表中, 铺面的道路将用6号线型来绘制, 半铺面的道路用78号线型来绘制.
ROADS#
|
ROADS-ID
|
RD-CODE
|
SYMBOL
|
1
|
1
|
1
|
6
|
2
|
2
|
2
|
78
|
3
|
3
|
2
|
78
|
4
|
4
|
1
|
6
|
5
|
5
|
2
|
78
|
Example: ARCLINES ROADS SYMBOL
查询表: 另一种用属性来指定绘制符号的方法是使用查询表. 查询表是一个INFO文件, 只包含两项. 一项是与特征属性表中相同定义的特征属性, 另外一项命名为SYMBOL. 对于特征属性表中的每一个出现的值, 查询表中都有对应的一个记录来指定其所要采用的符号代号. 如下面的ROADS.LUT表:
RD-CODE
|
SYMBOL
|
1
|
6
|
2
|
78
|
Example: ARCLINES ROADS RD-CODE ROADS.LUT
当你绘制地图的时候, 指定特征属性表中的属性项名和查询表名. ARCPLOT将在查询表中查找每一个值所应该采用的符号.
查询表可以使你为特征属性指定使用的符号. 这样就比使用属性值更灵活, 因为你所使用的属性值并不一定是理想的符号代码. 同时, 使用查询表也可以减少数据量, 也更容易修改更新.
练习: 建立查询表
委员会需要知道每块候选地与邻近的道路的关系及道路状况. 因此, 你需要建立查询表来区分表示不同的道路状况.
Arc: &stat 9999
Arc: INFO
ENTER USER NAME> ARC
ENTER COMMAND> SELECT ROADS.AAT
ENTER COMMAND> ITEMS
DATAFILE NAME: ROADS.AAT
COL
|
ITEM NAME
|
WIDTH
|
OPUT
|
TYP
|
N.DEC
|
1
|
FNODE#
|
4
|
5
|
B
|
-
|
5
|
TNODE#
|
4
|
5
|
B
|
-
|
9
|
LPOLY#
|
4
|
5
|
B
|
-
|
13
|
RPOLY#
|
4
|
5
|
B
|
-
|
17
|
LENGTH#
|
4
|
12
|
F
|
3
|
21
|
ROADS#
|
4
|
5
|
B
|
-
|
25
|
ROADS-ID
|
4
|
5
|
B
|
-
|
29
|
RD-CODE
|
1
|
1
|
I
|
-
|
可以看到, RD-CODE的定义是1,1 I.
ENTER COMMAND> DEFINE RD.LUT
ITEM NAME, WIDTH, [,OUTPUT WIDTH], TYPE [, DECIMAL PLACE] [, PROT.LEVEL]
1
ITEM NAME> RD-CODE
ITEMWIDTH> 1
ITEM OUTPUT WIDTH> 1
ITEM TYPE> I
2
ITEM NAME> SYMBOL
ITEM WIDTH> 2
ITEM OUTPUT WODTH> 2
ITEM TYPE> I
4
ITEM NAME> <CR>
ODD RECORD LENGTH ROUNDED UP TO EVEN
ENTER COMMAND> ITEMS
DATAFILE NAME: RD.LUT
2 ITEMS: STARTING IN POSITION 1
COL: ITEM NAME WIDTH OUTPUT TYPE N.DEC ALTERNATE NAME
1 RD-CODE 1 1 I -
2 SYMBOL 2 2 I -
ENTER COMMAND> ADD
1
RD-CODE> 1
SYMBOL> 6
2
RD-CODE> 2
SYMBOL> 78
3
RD-CODE> <CR>
2 RECORDS ADDED
ENTER COMMAND> Q STOP
TIP ARCPLOT在进行查找时是查找小于等于它的值的项. 比如, 你使用的是LENGTH项, 对应划分为三级(代号): 10(17), 25(3), 100(26). 则所有长度小于等于10 的弧段将以17号线来绘制, 大于10而小于等于25的将用3号线来绘制, 其它的都用26号线来绘制(包括大于100的!).
图例文件: 图例是用来解释说明你的地图的. 你需要生成一个图例文件来知道需要显示些什么图例.图例文件是用文本编辑器生成的文本文件. 在文件中, 你指定图例符号代号, 以及相应的说明性文字. ARCPLOT读入该文件并生成图例.下面是一个简单的例子(RD.KEY):
.6 |
Improved |
.78 |
Semi-improved |
6和78代表所要使用的符号代码(线型), Improved和Semi-improved将注记在符号旁边.
你也可以使用查询表或在特征表中添加SYMBOL和DESCRIPTION项来定义图例.
练习: 生成和显示图例(线COVERAGE)
利用上面的RD.KEY文件.
Arc: &station 9999
Arc: &popup rd.key
Arc: arcplot
Arcplot: usage keybox
Usage: keybox <width> <height>
Arcplot: keybox .5 0 //高度为0, 表示将用直线来表示
Arcplot: usage keyposition
Usage: keyposition <* | xy>
Arcplot: keyposition * //在屏幕上指定图例框左上角位置
Arcplot: usage keyline
Usage: keyline <key_file | CLASS> {NOBOX} {NOTEXT}
Usage: keyline <cover> <feature_class> <symbol_item> {text_item} {NOBOX}
Usage: keyline <layer> LAYER <symbol_column> {text_column} {NOBOX}
Usage: keyline <info_file> INFO <symbol_item> {text_item} {NOBOX}
Arcplot: keyline rd.key nobox
第五步: 最终地图制作
所有的准备工作已经完成, 可以开始在计算机中制作地图了.这部分工作将在ARCPLOT模块中完成.
本部分将介绍一些用来制作地图的ARCPLOT命令. 尽管只是很少的一部分命令, 但足以用来有效地制作简单的地图了. 你需要理解掌握这些命令的顺序和相互之间关系, 才能够制作精美的地图.
利用ARCPLOT来制作地图通常有5步:
练习: 制作你的地图
Arcplot: &stat 9999 //指定设备
Arcplot: mapextent finalcov //指定显示范围
一些术语:
物理页:(physical page) 即显示地图的实际页面, 如你的屏幕, 整个图纸
图形页: (graphics page) 物理页上用来显示绘制地图的部分
地图界限:(map limits) 图形页上用来绘制COVERAGE特征的区域
地图范围: (map extent) 用真实世界坐标来定义的区域, 该区域内的特征将被显示绘制出来.
Arcplot: pagesize 10 8 //指定图形页面大小
Arcplot: maplimits .25 .25 6.75 6.75 //指定COVERAGE特征显示绘制区域
Arcplot: mapposition cen cen //在地图界限区内如何放置COVERAGE. 将地图显示范围的中心与地图界限中心相对齐
Arcplot: mapunits meters
Arcplot; mapscale 17000
Arcplot: linesymbol 2 //设置当前线型
Arcplot: arcs template //绘制研究区边界
Arcplot: linesymbol 1 //采用另外一种线型
Arcplot: arcs template
Arcplot: clear //清除屏幕
Arcplot: map sites.map //打开地图制作, 命名地图为sites.map
Arcplot: plot border.map //已有的模板, 包括图框线, 指南针, 比例尺
Arcplot: reselect finalcov poly suitable = 1
Arcplot: polygonshades finalcov 3
Arcplot: polygons finalcov
Arcplot: arclines roads 2 //用2号线型来绘制所有道路. 但这不符合要求 所以下面修改:
Arcplot: mdelete //删除刚刚添加的图素
Arcplot: mfresh //重新显示地图, 没有了刚才绘制的道路
Arcplot: arcline roads rd-code rd.lut //用查询表来绘制道路
Arcplot: arcs template //研究区边界
Arcplot: textsize 8 pt //1 pica = 12 points 72 points = 1 inch
Arcplot: textcolor plum
Arcplot: labeltext finalcov finalcov-id //显示每个地块的编号
Arcplot: keyposotion 7.0 7.2
Arcplot: textfont 'univers medium'
Arcplot: textquality kern
Arcplot: textsize 14 pt
Arcplot: textcolor 1
Arcplot: kexbox .5 0
Arcplot: keyline rd.key nobox
Arcplot: textsize 24 pt
Arcplot: textfont 'univers bold'
Arcplot: move 0.8 7.4 //将光标移动到该位置, 也即标题条的左下角
Arcplot: text "Potential Sites for Aquaculture Lab"
Arcplot: map end //地图制作结束, 关闭文件
Arcplot: clear
Arcplot: plot site.map
如果你要绘制你的地图:
Arcplot: display 1040
Enter ARC/INFO Graphic filename: sites.gra
Arcplot: plot sites.map //地图被送到文件sites.gra中, 你可以用绘图仪来绘制该文件
Arcplot: quit
Arc: draw sites.gra 9999 //屏幕上显示
设计和生成报告
报告通常包括标题, 列名和具体的列, 入下面的简单报告:
标题 |
Potential sites
|
||
列名 |
site#
|
area
|
cost
|
具体的值 |
172
|
5640.191
|
11280
|
227
|
5495.015
|
10990
|
|
285
|
7125.877
|
7125
|
|
308
|
7546.493
|
11319
|
|
322
|
2653.453
|
2653
|
|
332
|
3087.506
|
3087
|
|
346
|
2701.034
|
2071
|
|
477
|
2573.669
|
2573
|
练习: 生成表格格式的文本报告
报告主要包括三列内容: User-ID, 面积, 价格.
Arc: info
ENTER USER NAME> ARC
ENTER COMMAND> SELECT FINALCOV.PAT
ENTER COMMAND> RESELECT SUITABLE = 1
ENTER COMMAND> OUTPUT ..\FINAL.REP INIT //INIT表示覆盖已有文件
ENTER COMMAND> REPORT //定义报告
2 ENTER COLUMN CONTENT> FINALCOV-ID //提取这一列
ENTER REPORT OPTION> <CR>
EMTER COLUMN HEADINGS> SITE# //取名为SITE#
ENTER COLUMN HEADINGS> <CR>
7 ENTER COLUMN CONTENT> AREA
ENTER REPORT OPTION> <CR>
ENTER COLUMN HEADINGS> AREA
ENTER COLUMN HEADINGS> <CR>
20 ENTER COLUMN CONTENT> COST
ENTER REPORT OPTION> <CR>
ENTER COLUMN HEADINGS> COST
ENTER COLUMN HEADINGS> <CR>
28 ENTER COLUMN CONTENT> <CR>
ENTER REPORT TITLE> 'POTENTIAL SITES'
DO YOU WISH TO EXECUTE THIS FORM (Y OR N)> Y
OUTPUT TO PRINTERS> Y
LINES PER PAGE?> <CR>
ENTER REPORT OPTIONS> <CR>
ENTER COMMAND> Q STOP
Arc: &popup final.rep
高级话题: 制作展示用地图
需要显示地图在更大区域中的位置, 将报告显示在上面, 更多的图例.
Arc: arcplot
Arcplot: &station 9999
Arcplot: map lab.map //开始地图制作, 命名为lab.map
Arcplot: mapextent 4550 5090 6090 6740 //指定放大显示的区域, 包含所有可选地块
Arcplot: pagesize 36 24 //指定图纸大小
Arcplot: maplimits 1 0 18.5 23 //地图在图纸上的位置
Arcplot: mapposition cen cen //对齐方式
Arcplot: mapunits meters //表面地图单位(即COVERAGE数据)是米
Arcplot: mapscale 3000 //指定地图比例尺
Arcplot: shadeset carto //carto集实用于高质量的笔式绘图机
Arcplot: polygonshades landuse lu-code labplot.lut //填充土地利用图
Arcplot: reslect fianlcov suitable = 1 //绘制可选地块的边界
Arcplot: linesymbl 5
Arcplot: polygons finalcov
Arcplot: arclines streams strm-code streams.lut //绘制河流(主要的和次要的, 根据strm-code在查询表中对应的值)
Arcplot: reselect roads arc rd-code = 1 //绘制主要道路
Arcplot; linesymbol 2
Arcplot: arcs roads
Arcplot: textsize 14 pt //准备标注每快地块的号码, 以便与报表参照
Arcplot; textcolor yellow
Arcplot: polygontext finalcov finalcov-id
Arcplot: mapextent template //绘制参照地图, 即整个区域
Arcplot: mapscale automatic
Arcplot: maplimits 19.5 0.25 26.5 10.0
Arcplot: reselect template poly lu-code ne 500 //选择陆地
Arcplot: polygonshades template 329
Arcplot: nselect template poly //水面
Arcplot: polygonshades template 431
Arcplot: units map //准备绘制放大区域在研究区上的范围位置, 利用地图单位(米)来绘制标识框
Arcplot: linesymbol 5 //用粗线条绘制区域边界
Arcplot: box 4550 5090 6090 6740
Arcplot: linesymbol 1 //绘制弧段
Arcplot: arcs template
Arcplot: units page //指定单位为页单位
Arcplot: textfont triumvirate //添加报表数据
Arcplot: textquality proportional
Arcplot: textsize 36 pt
Arcplot: textcolor 1
Arcplot: move 19.8 21
Arcplot: textfile final.rep
Arcplot: linesymbol 5 //绘制外边框
Arcplot: box 0 0 36 24
Arcplot: linesymbol 1 //绘制内边框
Arcplot: box .25 .25 35.75 23.75
Arcplot: line 27.75 23.75 27.75 .25 //分出图例区和指南针,LOGO区
Arcplot: line 27.75 5 35.75 5
Arcplot: line 31.75 5 31.75 .25
Arcplot: mapextent northarr //绘制预先制定好的指南针COVERAGE
Arcplot: maplimits 28 1 31.5 5
Arcplot: arcs northarr
Arcplot; mapextent anno ulogo //绘制LOGO
Arcplot: annotext ulogo //LOGO是用ANNOTATION生成的, 把文本作为COVERAGE特征以地图单位存储的
arcplot: mfit * //指定范围使LOGO显得大一些
Arcplot: textsize .40 //比例尺注记
Arcplot: move 28.5 0.5
Arcplot: text "Scale 1:3000"
Arcplot: keyarea 28.5 22 35 5.5 //定义图例显示区域
Arcplot: keybox 0.6 0.6 //单个图例框大小
Arcplot; keyseparation 1.0 1.0 //图例框间隔和与文字间隔
Arcplot: textsize .6 //绘制填充图例
Arcplot keyshade labplot.key
Arcplot: keybox 0.6 0 //绘制线条图例
Arcplot: keyline labmap.key nobox
Arcplot: textfont 'times bold' //地图大标题采用用黑体字
Arcplot: textsize 0.8
Arcplot: textfit "Potential University Lab Sites' 2 22.75 25.75 22.75
Arcplot: map end //地图制作完成, 清屏, 重新显示所制作的地图
Arcplot: clear
Arcplot: plot lab.map
Arcplot: quit
Arc: draw lab.map //在ARC下可以用draw来显示地图或用plot来绘制地图