一、矢量数据的获取
在几何数据采集中,如果几何数据已存在于其它的系统或专题数据库中,那么只要经过转换装载即可;对于由测量仪器(如全站仪、GPS等)获取的几何数据,只要把测量仪器的数据传输进入数据库即可,测量仪器如何获取数据的方法和过程通常是与我们现在的工作无关的。
对于栅格数据的获取,主要涉及使用扫描仪等设备对图件的扫描数字化,这部分的功能也较简单。因为通过扫描获取的数据是标准格式的图像文件,大多可直接可用的地理数据库。
从遥感影像上直接提取专题信息,需要使用几何纠正、光谱纠正、影像增强、图像变换、结构信息提取、影像分类等技术,主要属于遥感图像处理的内容。
因此,以下主要介绍用ArcGIS软件进行矢量数据的采集。矢量数据的采集主要包括地图跟踪数字化与地图扫描数字化,以及屏幕跟踪数字化。
1)地图跟踪数字化
跟踪数字化是目前应用最广泛的一种地图数字化方式,是通过记录数字化板上点的平面坐标来获取矢量数据的。其基本过程是:将需数字化的图件(地图、航片等)固定在数字化板上,然后设定数字化范围、输入有关参数、设置特征码清单、选择数字化方式(点方式和流方式等),就可以按地图要素的类别分别实施图形数字化了。
地图跟踪数字化时数据的可靠性主要取决于操作员的技术熟练程度,操作员的情绪会严重影响数据的质量。操作员的经验和技能主要表现在能选择最佳点位来数字化地图上的点、线、面要素,判断十字丝与目标重合的程度等能力。
2)地图扫描数字化
扫描数字化是目前较为先进的地图数字化方式,也是今后的发展方向,但要实现完全自动化还要做大量艰巨的努力,目前所能提供的扫描数字化软件是半自动化的,还需做相当的人机交互工作。地图扫描数字化的基本思想是:首先通过扫描将地图转换为栅格数据,然后采用栅格数据矢量化的技术追踪出线和面,采用模式识别技术识别出点和注记,并根据地图内容和地图符号的关系,自动给矢量数据赋属性值。
根据目前的技术水平,首先要对所扫描的彩色地图进行分版处理,通常分为黑版要素、水系版要素、植被要素和地貌要素,也可以直接对分版图进行扫描,然后由软件进行二值化,去噪音等处理,经常需要进行一些编辑,以保证自动跟踪和识别的进行;在软件自动进行跟踪和识别时,仍需要进行部分的人机交互,如处理断线、确定属性值等,有时甚至要人工在屏幕上进行数字化。与地图跟踪数字化相比,地图扫描数字化具有速度快、精度高、自动化程度高等优点,成为最主要的地图数字化方式。
3)屏幕跟踪数字化过程
当数据量不是特别大,精度要求不是特别高的时候,可以采用一种折中的方法,就是屏幕跟踪数字化。屏幕跟踪数字化的过程:
1)纸质地图准备。
2)建立新的图层或者打开已有的图层,并进行坐标系统、范围的设置。
3)在纸质地图上建立控制点,扫描。
4)配准纸质地图。所有图件扫描后都必须经过扫描纠正,对扫描后的栅格图进行检查,
以确保矢量化工作顺利进行。
5)屏幕矢量化。
本节主要学习用ArcGIS软件进行屏幕跟踪数字化,即屏幕矢量化的过程:
1添加数字化底图图层,进行图像校准(可选)(培训教程P40)所有图件扫描后都必须经过扫描纠正,对扫描后的栅格图进行检查,以确保矢量化工作
顺利进行。在ArcMap中进行影像校准的一般步骤为:
1)打开ArcMap,增加Georeferncing工具条。
2)把需要进行纠正的图像增加到ArcMap中,会发现Georeferncing工具条中的工具
被激活。
3)在校正中需要知道一些特殊点的坐标作为校正控制点。公里网格的交点可以作为校
正控制点,从图中均匀取几个点作为控制点。
4)将Georeferncing工具条的Georeferncing菜单下Auto Adjust不选择,不进行自
动校准。点击Add Control Point按钮开始添加校正控制点,使用该工具在扫描图
上精确到找一个控制点点击,然后鼠标右击输入该点实际的坐标位置。如果输入坐
标点错误,可以打开link table删除错误的控制点。用相同的方法,在图像上增
加多个控制点,输入它们的实际坐标。
5)增加所有控制点后,在Georeferencing菜单下,点击Update Display更新显示。
在底图上点击右键,选择zoom to layer缩放到当前底图,更新后的底图上各点就
变成真实的坐标。观察状态栏的坐标是否正确。
6)在Georeferencing菜单下,点击Rectify,将校准后的影像保存在自己的目录下,
文件名为xxxx.tif,作为矢量化的底图。
7)将原图remove出当前地图,然后再把校正过的底图xxxx.tif添加到地图中来。2准备矢量图层
1)在ArcCatalog中新建多个shp文件作为矢量图层;
2)在ArcMap中添加以上矢量图层,并进行分层矢量化。
3分层矢量化
1)添加editor工具条
将校正好的矢量化底图xxxx.tif和上一步中新建的各个矢量图层一起添加到地图中来,在工具栏空白处点击右键打开editor,熟悉editor工具条的功能。
(培训资料P28)
2)新建地物(即要素)
选定一个线状图层开始编辑【start editing】,创建新要素(讲义P55/培训资料P29),沿底图矢量化某一类线状地物,如河流、道路、等高线等,其中注意捕捉功能的设置,也要注意线上拐点的选取,矢量化过程中一些快捷键的使用可以方便矢量化过程。
再选定一个点状图层进行编辑,注意定位点的确定。选定一个面图层进行编辑,注意新建岛和洞的方法。保存所作的编辑,停止编辑。熟练使用tools工具条上的各个工具的功能。在ArcCatalog中查看编辑后的效果。
也可以通过CAD文件格式向图中添加新要素。(讲义P59)
3)添加、删除属性字段,添加、修改属性
打开ArcCatalog对某一图层进行属性编辑(P31),如对等高线层添加“ELEV”字段等,并根据底图对属性赋值,并会删除某个字段。
4)编辑地物/要素
编辑空间数据:选中一个线状图层开始编辑(P30),编辑线的节点,用editor下拉菜单中的工具进行线的编辑,如合并线,剪断线,复制线,线的缓冲区输入等。结束编辑,保存编辑。选中一个面图层进行同样的操作,会合并区,分割区等操作。
打开当前图层的属性表,可以对属性进行修改。
5)保存所做的编辑
此处的保存是对图层数据(包括空间几何数据和属性数据)进行保存。点击【editor】工具条下的【save editing】保存图层数据,并点击【stop editing】停止对当前
图层的编辑。此时图层处于只读状态,不可编辑。
6)添加符号
选取一个图层,双击图例打开符号选择对话框进行图例编辑。
4保存自己的工程
此处的保存只是保存工作目录,并不是保存地图中的数据。点击【文件】菜单下的【保存】,保存为mxd文档文件,以便下次打开文档后能在目前工作的基础上继续进行。
5出图
1)切换当前视图到出版视图:点击【view】视图菜单下的制版视图【layout view】
2)在地图中加入一个新的数据框:在菜单栏上点击【插入】,然后点击数据框【data
frame】
Newly inserted data frame:新插入的数据框
3)复制一个数据框:选择一个数据框,在菜单栏中点击【edit】,选择【copy】,并
可以改变数据框的大小
4)添加指北针:在菜单栏中点击【insert】并点击选择指北针,选择一个指北针并确
定。点击并按住左键不放拖拉到合适的位置,拖拉指北针边框上的方块可以改变指
北针的大小。
5)插入一个比例尺:在菜单栏上点击【插入】,点击【scale bar】,可以点击属性
【properties】来改变它的属性,并确定。点击左键并按住左键不放拖拉到合适的
位置,通过拖拉比例尺周围的方块可以改变其的大小。同样的方法添加比例尺文字。
6)添加图例:在菜单栏上点击【插入】,点击【legend】,缺省状态下,地图的所有
图例都是作为一个项显示在图例中,可以通过点击左右方向键来增加、移去一个地
图图例的项元素。用上下键来改变图例的顺序。点击下一步,输入图例标题,可以
设置文本显示的颜色、大小和字体,点击下一步,点击边界【border】的向下方向
键,然后点击一个边界。点击阴影【drop background】的乡下方向键,然后点击
一个背景色。点击下一步,点击图例列表中的一个原色,可以修改之,点击下一步。
设置图例元素间的间隔大小,点击完成。
7)添加标题:在菜单栏上点击【插入】,点击【title】,输入一个地图标题,点击
并拖拉这个标题到地图上的合适位置,也可以修改地图标题的外观。
8)打印预览并打印地图,也可以把地图打印成文件格式。
二、数据处理
在实际应用研究中,根据研究区域的特点,首先需要对空间数据及属性数据进行处理,以便获取需要的数据。一般空间数据的处理有如查询、裁切、空间表现(符号化)等操作,借助于ArcToolbox 中的工具可以进行多种空间数据处理操作。
1.数据查询
如何从庞大的数据库中得到我们感兴趣的数据?这就需要进行数据查询。ArcGIS提供的工具可以实现空间数据和属性数据互查,也可以用SQL语言进行数据查询。地图所示区域要建一个飞机场,那么机场用地要征用哪些土地?机场建设用地规划的同时,要考虑机场建成后由于噪声等都会对周围居民产生影响,那么规划期间我们就要查询出究竟噪声会影响到哪些居民区?会不会对学校等产生影响?下面结合演示数据学习如何进行空间和属性数据查询。
打开ArcGIS自带演示数据airport.mdb(D:\ Program Files\arcgis\ArcTutor\Map)。各图层分别表示:
1)schools:初级、中级、高级和私立中学的位置;
2)runways:机场跑道的位置;
3)artcrials:主要道路;
4)cnel65:噪声等值线;
5)airport_area:计划的机场扩展区;
6)county:县界;
7)parcels:机场周围的宗地信息。
3.1.根据字段显示地图提示(在schools图层上提示学校的名称)。
1)双击图层,显示图层属性对话框;
2)点击对话框上的fields选项卡;
3)点击primary display field 下拉框,选择需要显示的字段;
4)点击display选项卡,并点击show map tips项;
5)点击ok。将鼠标移动到图上停留一下,就会看到要素的属性。
3.2.查询出所有位于噪声等值线内的学校,写出学校名称。
1)点击selection菜单,点击select by location;
2)在上部的框内,用下拉箭头确定select features from;
3)在下面的框内,点击schools旁边的复选框作为要被选择的要素;
4)在第三个框内,用下拉箭头确定are completely within;
5)在最后的框内,点击下拉箭头,点击cnel65,将其作为包含学校的图层;
6)点击apply。被选中的学校周围有一条宽线突出显示。
3.3.查询所有未利用地。
1)点击selection菜单,点击select by attribute;
2)在上部的框内,用下拉箭头确定要在parcels层上进行查询;
3)在下面的框内,用下拉箭头确定create a new selection;
4)在第三个框内双击要查询的字段land_use;
5)点击“=”按钮,并在最后的框内在“=”后输入’UNK’;
6)点击verify按钮检查SQL语法是否正确;
7)点击apply。被选中的地块周围有一条宽线突出显示。
3.4.根据土地利用类型显示土地要素。
1)右击parcels图层,点击properties;
2)点击symbology选项卡,所有的地块目前都使用了相同的是新填充颜色;
3)点击categories,unique values自动突出显示;
4)使用向下箭头找到land use,该字段是用来shade parcels;
5)点击add all values,每种土地利用类型都会用一种颜色来表示。
6)点击ok,parcels现在按它们的土地利用类型重绘。
3.5.噪声等值线内共有多少种土地利用类型?
1)点击selection菜单,点击select by location;
2)在上部的框内,用下拉箭头确定select features from;
3)在下面的框内,点击parcels旁边的复选框作为要被选择的要素;
4)在第三个框内,用下拉箭头确定are intersected by;
5)在最后的框内,点击下拉箭头,点击cnel65,将其作为切割地块的图层;
6)点击apply。被选中的地块周围有一条宽线突出显示。
2.数据裁切
数据裁切是从整个空间数据中裁切出部分区域,以便获取真正需要的数据作为研究区域,减少不必要参与运算的数据。
2.1.矢量数据的裁切
1)展开Analysis Tools 工具箱,打开Extract 工具集,双击Clip,打开Clip 对话框(如
下图);
2)在Input Features 文本框中选择需要裁切的矢量数据;
3)在Clip Features 文本框浏览确定用来进行裁切的矢量数据;
4)在Output Feature Class文本框键入输出数据的路径与名称;
5)Cluster Tolerance是可选项,用于确定容差的大小;
6)单击OK 按钮,完成操作(如下图)。
2.2.栅格数据的裁切
栅格数据的裁切有多种方法,例如用圆形、点、多边形、矩形,以及利用现有数据裁切。下面以用矩形和现有数据裁切栅格数据为例进行说明,其他几种裁切操作大同小异。其中最常用的方法是利用现有栅格或矢量数据裁切栅格数据。
2.2.1.矩形裁切操作
1)展开Spatial Analyst Tools工具箱,打开Extraction工具集,双击Extract by
2)Rectangle,打开Extract by Rectangle对话框(如下图);
3)在Input raster 文本框中选择需要裁切的栅格数据;
4)在Rectangle文本框定义裁切面积,用左下角点和右上角点的坐标来定义矩形的大
小;
5)在Output raster 文本框键入输出数据的路径与名称;
6)Extraction area 是可选项,定义裁切矩形内部还是外部的数据(默认状态是内
部);
7)单击OK 按钮,完成操作(如下图)。
2.2.2.利用已有数据的裁切操作
1)展开Spatial Analyst Tools工具箱,打开Extraction工具集,双击Extract by Mask,
打开
2)Extract by Mask对话框(如下图);
3)在Input raster 文本框中选择需要裁切的栅格数据;
4)在Input raster or feature maskdata 文本框定义用以裁切的栅格或矢量数据;
5)在Output raster 文本框键入输出的数据的路径与名称;
6)单击OK 按钮,完成操作(如下图)。
3.数据提取
数据提取是从已有数据中,根据属性表内容选择符合条件的数据,构成新的数据层。可以通过设置SQL表达式进行条件选择。
3.1.矢量数据的提取
1)展开Analysis Tools 工具箱,打开Extract 工具集,双击Select,打开Select 对
话框(如下图);
2)在Input Features 文本框中选择用于进行选择的矢量数据;
3)在Output Feature Class文本框键入输出的数据的路径与名称;
4)单击Expression可选文本框旁边的【SQL】按钮,打开Query Builder 对话框(如
下图),设置SQL 表达式;
5)单击OK 按钮,完成操作(如下图)。
3.2.栅格数据的提取
1)展开Spatial Analyst Tools工具箱,打开Extraction工具集,双击Extract by
Attributes,打开Extract by Attributes 对话框(如下图)。因为该功能是依据
数据的属性进行提取,所以适用于具有属性表的栅格数据;
2)在Input raster 文本框中选择用于进行选择的矢量数据;
3)单击Where clause文本框旁边的【SQL】按钮,打开Query Builder 对话框(如下
图),设置SQL 表达式;
4)在Output raster 文本框键入输出的数据的路径与名称;
5)单击OK 按钮,完成操作(如下图)。
4.地图数据符号化
在专题地图(规划图、土地利用图等)的制作过程中,需要将地图上的点线面等几何信息按照规定的专题图的符号表达出相应的地物,这就需要对地图数据进行符号化。
符号化有两个含义:在地图设计工作中,地图数据的符号化是指利用符号将连续的数据进行分类分级、概括化、抽象化的过程。而在数字地图转换为模拟地图过程中,地图数据的符号化指的是将已处理好的矢量地图数据恢复成连续图形,并附之以不同符号表示的过程。
这里所讲的符号化是指后者。
符号化的原则是按实际形状确定地图符号的基本形状,以符号的颜色或者形状区分事物的性质。例如用点、线、面符号表示呈点、线、面分布特征的交通要素,点表示建筑或者特定地点,线表示公路和铁路,面用来表示地区。
一般来说符号化方法可分为以下几类:单一符号、分类符号、分级符号、分级色彩、比率符号、组合符号、统计符号、彩色阴影等。
单一符号:采用大小、形状、颜色都统一的点状,线状或者面状符号来表达制图要素。这种符号设置方法忽略了要素在数量、大小等方面的差异,只能反映制图要素的地理位置而不能反映要素的定量差异,然而正是由于这种特点,在表达制图要素的地理位置具有一定的优势。
分类符号:根据数据层要素属性值来设置地图符号的方式是分类符号表示方法。将具有相同属性值和不同属性值的要素分开,属性值相同的采用相同的符号,属性值不同的采用不同的符号。利用不同形状、大小、颜色、图案的符号来表达不同的要素。这种分类的表示方法能够反映出地图要素的数量或者质量的差异,对地理信息的决策作用提供了支持。
分级色彩:将要素属性数值按照一定的分级方法分成若干级别之后,用不同的颜色来表示不同级别。每个级别用来表示数值的一个范围,从而可以明确反映制图要素的定量差异。色彩选择和分级方案是分级色彩表示方法的重要环节,因为颜色的选择和分级的设置要取决于制图要素的特征,只有合理的配色方案和科学的分级方法才能将地图中要素的宏观分布规律体现得清晰明确。
分级符号:与分级色彩设置有所不同,是采用不同的符号来表示不同级别的要素属性数值。符号形状取决于制图要素的特征,而符号的大小取决于分级数值的大小或者级别高低。这种表示方法一般用于表示点状或者线状要素。多用于表达人口分级图、道路分级图等。它的优点是可以直观地表达制图要素的数值差异。其中,制图要素分级和分级符号表示是关键的环节。
比率符号:在分级符号表示方法中,属性数据被分为若干级别,在数值处于某一级别范围内的时候,符号表示都是一样的,无法体现同一级别不同要素之间的数量差异。而比率符号表示方法是按照一定的比率关系,来确定与制图要素属性数值对应的符号大小,一个属性数值就对应了一个符号大小,这种一一对应的关系使得符号设置表现得更细致,不仅反应不同级别的差异,也能反映同级别之间微小的差异。但是如果属性数值过大,则不适合采用此种方法,因为比率符号过大会严重影响地图的整体视觉效果。
点值符号:使用一定大小的点状符号来表示一定数量的制图要素,表现出一个区域范围内的密度数值,数值较大的区域点较多,数值小的地区点较小。是一种用点的密度来表现要素空间分布的方法。
统计符号:这是专题地图中经常应用的一类符号,用于表示制图要素的多项属性。常用的统计图有饼状图、柱状图、累计柱状图等。饼图主要用于表示制图要素的整体属性与组成部分之间的比例关系、柱状图常用于表示制图要素的两项可比较的属性或者是变化趋势,累计柱状图既可以表示相互关系与比例,也可以表示相互比较与趋势。
无论点状、线状、还是面状要素,都可以根据要素的属性特征采取单一符号、分类符号、分级符号、分组色彩、比率符号、组合符号和统计图形等多种表示方法实现数据的符号化,编制符合需要的各种地图。由于单一符号设置是ArcMap 系统中加载新数据层所默认的表示方式,设置非常简单,下面介绍几种其它常用的符号设置方法。
4.1.分类符号设置
打开一个道路图层。
1)在道路图层上点右键打开Layer Properties 对话框;
2)在Categories 上下拉出现三个选项,分别是Unique Value;Unique Value,Many
fields;Match to symbols in a style。其中Unique Value指的是按照一个属性值来进行分类,Unique Value,Many fields 是按照多个属性值的组合分类来确定符号类型,如果选择Match to symbols in a style,将会按照事先确定的符号类型通过自动匹配来表示属性分类;
3)选择Unique Value选项,在Value Field中选择CLASS,即街道的分级;
4)单击Add Value按钮,出现Add Value对话框,其中出现了三条等级字段:Highway,
limited to access;Interchange;Street,improved or unpaved。(下图左)单击CompleteList,又出现了三条字段,这样,道路共被分为六个等级,如下图右所示;
6)选中所需要的字段,单击确定之后,在Symbols 的列表框中会出现刚才所选择的字
段,字段前附有它们相应的符号样式。如果想选择所有字段,只需直接单击Add All Value按钮即可将所有字段添加进来。其效果与把Complete List中的所有街道级别添加进来一样。所给的字段列表若仍不能完全满足需要,可在Add Value对话框中使用New Value文本框,添加所需要的字段名称,选择Add to List即可;
7)至此已对不同级别的道路分类,若对系统默认的符号样式不满,可以单击Value名
称前面的Symbol符号,打开Symbol Selector 窗口。通过Option 中的Color,Width 设置改换它的颜色和宽度。也可以单击Properties 按钮改变该符号的一些其他属性,或者通过单击More Symbols选择更多的符号;
8)完成设置后返回Layer Properties 对话框(如下图),结果如下图所示。
4.2.分级符号设置
4.2.1.分级色彩设置
1)加载一个州图层和城市图层;
2)打开城市图层的Layer Properties 对话框(如下图);
3)单击Quantities,选中Graduated Colors,在Fields 复选框的Value下拉菜单中选
择POP1990,表示1990 年的人口总数,在Normalization下拉菜单中选择Area,表
示某一地区的总面积。其目的是将POP1990(人口数)除于AREA(面积),得到人口密
度的计算结果。人口密度可以使用分级符号方法体现在的地图中。
注:Layer Properties 对话框中默认要素的分级方案为NaturalBreaks,是在分级数确定的情况下,通过聚类分析将相似性最大的数据分在同一级,差异性最大的数据分在不同级,这种方法可以较好保持数据的统计特性,但分级界限往往是任意数,不符合常规制图需要。
1)将Classification复选框中的Classes定为7,单击Classify按钮,打开
Classification对话框(如下图):选择分级方式为Manua(手动分级),将原来的
分级界限依次修改为:50,100,200,400,700,1500,15000。单击Show Std.Dev
和ShowMean前的复选框,直方图中出现新的分级界限,标准差和平均值。
2)确认新的方案后返回Layer Properties 对话框,可以看到新旧分级方案之间的差
异。单击Label中的数字,改为简洁直观方式,应用更改。
现在通过对制图要素的具体设置,得到了一张利用分级色彩方法表示的墨西哥地区1990 年的人口密度图(如下图所示)。
依据色彩差异,人口密度的宏观分布特征显而易见,颜色越深,则密度越高。上述分级色彩方案直接应用了系统中的一种色彩序列,若认为色彩差异还不够明显,可以手工设置颜色方案。
注:手工定制一个分级色彩方案:
1)打开Layer Properties 对话框,双击Symbol中的第三个色块,改变其颜色;
2)在第三个色块上右键,单击菜单中的Ramp Color 命令,分级色彩方案将根据所修
改的颜色发生变化。在Color Ramp窗口中出现了新的分级色彩方案。
3)如果这样的分级方案令人满意,那么可以在分级色彩方案上右键单击Save to Style
命令,保存为Multi-part Color Ramp,形成新的分级色彩方案。
上述分级色彩方案的设置过程中,完全采用了手动的方式修改分级方案的数字标注(Labels)。实际上,系统提供了标注格式的统一编辑方法:在Layer Properties 对话框中,在分级色块上右键打开Format Labels命令,打开Number Format对话框(如下图),改变标注的格式。
4.2.2.分级符号设置
1)打开一个州图层;
2)在州图层上点右键打开Layer Properties 对话框(如下图),进入Symbology选项
卡,选中show列表框中Quantities 里的Graduated Symbols;
3)通过改变Fields 里面的字段名称,可以改变符号所代表的字段,这里选择Value:
POP1990, Normalization:Area。设置Classification中的Classes 为7级。在
Symbol Size中设置符号的由小到大的尺寸;
4)设置分级符号:在Layer Properties 对话框中,单击Template按钮,打开Symbols
Selector 对话框,见下图,改变符号的尺寸、颜色,或者选择More Symbols丰富
符号选择范围,在这里就不作赘述了,重点介绍其中Properties 的设置方法。
5)在Symbols Selector 对话框中单击Properties 按钮,打开Symbol Property
Editor 对话框;
6)Symbol Property Editor 对话框中,通过Preview里的放大缩小按钮,或者显示比
例的下拉菜单可以改变符号的显示大小;在Layers选项组内单击符号轮廓线,再单
击Color 修改颜色;在符号轮廓模板内,选择所需要的符号轮廓,可以根据需要改
变符号的Font 和Subset。单击OK 应用符号;
7)完成符号设置后,如果想将此符号样式保存下来以便日后使用,可以在Symbols
Selector 对话框中单击Save按钮,填入符号名称和所在的组类名称,此符号就被
保存下来了。
注:在默认状态下,分级符号的大小是一定的,不随地图在屏幕上的缩放而变化,如果想在屏幕缩放的时候分级符号大小发生相应变化,可以单击快捷菜单的Set ReferenceScale;若想恢复原来的状态,只要单击Clear Reference Scale即可。
另外还有比率符号、点值符号的设置过程同分级符号化相似,在此不作叙述。
5.3D地图的制作
6.Google earth 与sketchup制作3D地图
三、数据存储与转换
1.用geodatabase存储数据
Geodatabase是一种采用标准关系数据库技术来表现地理信息的数据模型。Geodatabase支持在标准的数据库管理系统(DBMS)表中存储和管理地理信息。
Geodatabase支持多种DBMS结构和多用户访问,且大小可伸缩。从基于Microsoft Jet Engine的小型单用户数据库,到工作组,部门和企业级的多用户数据库,Geodatabase都支持。目前有两种geodatabase结构:个人Geodatabase和多用户Geodatabase (multiuser geodatabase)。
数据库的关键概念
Geodatabase体系结构基于一系列简单,但是非常重要的数据库概念之上。DBMS提供了一个简单但是严谨的数据模型用于存储和操作表中的数据。用户趋向于认为DBMS本身是开放的,因为关系数据模型的简单性和灵活性可以使其支持各种应用程序。关键的DBMS 概念包括:
数据存放在表中;
表包含了记录;
所有表中记录包含了相同的列;
每个列都有数据类型,例如Integer,Decimal number,Character,Date等
关系用于关联一个表的记录与另外一个表的记录,一般通过表中相同的列来进行,这两个列被称为主键和外键。
基于表的数据集具有相关的完整性规则。例如,每个记录具有相同的列,而域列出该列合法的值的集合或范围。
具有一系列函数和操作符,称作SQL,来对表和数据进行操作
SQL操作符用来对常规的关系数据库的数据类型进行操作,如Integer,Decimal number,Character等。
存放在geodatabase中的空间数据,如要素类或者栅格数据,也遵循这些DBMS的规则。表中的一个列存放了每个地理对象的空间信息:比如,要素类表的shape列存放多边形的形状。可以利用DBMS中的多种数据类型来存放空间数据,比如BLOB(binary large object),或者一些DBMS扩展的空间类型,比如Oracle空间扩展模块提供的空间数据的存储类型。
SQL可以操作表中的行,列和类型。列类型(数值型,字符型,日期型等)是SQL代数中的对象。
DBMS管理这些简单数据类型和表,同时其他的应用逻辑实现更复杂的对象行为和完整性约束。开发者可以通过编写代码为对象添加行为和逻辑来实现更高级的对象。
如,一个组织机构实现一个命名为EMPLOYEES的表:
一个简单的包含行和列的关系数据表。每列都有特定的数据类型,
如字符,日期和带两位小数的数值型。
对雇员和他们的名称,工资,雇佣日期等建立业务对象模型,不同于关系对象的实现。
在这些业务对象上实现行为和完整性约束需要通过更复杂和更集中的应用逻辑。例如,支持雇员活动的逻辑,包括雇佣,加薪,辞职,升职,福利等。
类似的业务对象在GIS中也被普遍应用。如要素类,拓扑,网络,线性参考系统,影像目录(raster catalogs),尺寸,注记,地表等等都是高级对象的例子,他们在DBMS中存储的简单空间信息的基础之上实现了特定的GIS行为。GIS应用中,只含有空间信息属性的表是不够的。简单DBMS关系对象和应用对象对构建信息系统来说都是必须的。Geodatabase在RDBMS中的存储
Geodatabase在关系表中存储空间和属性数据,此外还存储地理数据的模式和规则,。
Geodatabase的模式包括地理数据的定义、完整性规则和行为,比如要素类的属性,拓扑,网络,影像目录,关系,域等。模式由DBMS中一组定义地理信息完整性和行为的Geodatabase的元数据表(metatable)来维护。
SQL可以操作表中的行,列和类型。列类型(数值型,字符型,日期型等)是SQL代数中的对象。
空间数据一般存储为矢量要素和栅格数据,以及传统意义上属性表。比如:一个DBMS 表可以用来存放一个要素的集合,表中的每行可以用来保存一个要素。每行中的shape字段存储要素的空间几何或形状信息。shape字段的类型一般分为两种:
BLOB
DBMS支持的空间类型
相似的要素的集合(具有相同的空间类型(如点,线或多边形),加上相同的一组属性字段)由一个单一的表来管理,称为要素类。
栅格和图像数据也存放在关系表中。栅格数据通常很大,需要副表用于存储。栅格数据通常切成小片,称为块(block),存放在单独的块表的记录中。
不同的数据库中存储矢量和栅格数据的字段类型是不同的。如果DBMS支持空间扩展类型,Geodatabase可以直接使用这些类型存储空间数据。作为SQL 3 MM Spatial和OGC 简单要素SQL规范的主要作者,ESRI一直致力于将SQL向空间化方向扩展,重点是支持在标准的DBMS和独立的Oracle Spatial中存储Geodatabase。
Geodatabase 实现在关系型数据库中存储地理数据。在标准的DBMS 表中用标准的SQL 数据类型存储和管理所有的地理元素。图中列出了用于开发地理数据模型的一些Geodatabase 的结构元素。
用ArcCatalog新建geodatabase空间数据库
1)打开ArcCatalog,在左侧目标文件列表中选择新建空间数据库的文件夹。
2)在目标文件夹上点击右键,选择新建,新建个人空间数据库,右边文件列表中出现新建的个人空间数据库,修改其名称。
3)在新建的个人数据库上点击右键,选择新建,新建feature class,即新建一个地物图层。在弹出的对话框中输入新建图层的名称及类型(点、线或者面),进入下一步。
输入空间参考和地图单位并进入到属性设置步骤中。
4)输入字段(属性)名称及字段类型后完成操作。
在ArcCatalog中修改属性
1)打开ArcCatalog,选择要修改属性的图层,在右侧选择预览选项卡,并在下侧选择【table】,用表格的形式预览图层数据。
2)点击右侧【options】选项,可以添加字段。
3)在表格中选择字段,点击右键,可以删除选中的字段。系统默认字段不可删除,如ID,SHAPE,长度和面积。
2.Access、excel属性数据导入到ArcGIS中
在GIS系统中,通常用“表格连接”操作把已有的外部属性数据库与系统中的图形数据连接在一起,使图形数据与外部的属性数据相对应。两者之间联系的纽带通常是地物的“ID”属性。ArcGIS的图层中,每个地物都有唯一的一个标志字段“ID”,外部数据库中也必须要有唯一的一个表示地物的字段,两者才能连接。
表格的连接就是将外来表格的字段及记录加载于当前活动图层的属性表中,从而使外来数据作为“图形要素”属性的一部分而在当前图层的属性表中得到反映,从而进一步完善要素的属性类型,丰富要素属性信息。
两个表格连接后,实际上就确立了目的表与源表之间的一对一或多对一的关系。
这种关系是系统自动建立的,用户不必理会它是否建立了一对一或是多对一的关系。本实验表述了一种“一对一”的连接关系,要理解什么是多对一,可以参考以下例子。
假如当前有一个展示某地区植被类型的图层,该主题内含有若干个植被类型图斑(多边形),不同图斑的植被类型可能重复出现(比如有2个图斑属于第4种类型,有5个图斑属于第1种类型等等),这样,当您将该图层属性表通过“植被类型”公共字段与另一个专门描述各植被类型特征的源表格相连接时,目标属性表中的多个图斑多边形就有可能只对应其中一种植被特征,这样建立起来的表格连接就符合“多对一”的连接关系。
表格连接实际上并不是将源表格中的数据真正地复制到目标表(属性表)之中,而只是建立了一种目标表与源表之间的动态连接的“关系”。
在ArcMap中可以直接以添加数据的方式把外部数据库(ACCESS、EXCEL等)中的属性表格添加进来进行操作。
airport数据库中tract_pop表格(源表)与tracts图层进行属性(目标表)连接,并查询辖区人口。
1)打开ArcMap,加载airport.mdb空间数据库中的tracts图层和tract_pop表格,打开tracts层的属性表查看其属性信息,打开tract_pop查看行政区内的人口属性。注意
图层和pop表中有相同类型的字段tract_ID;
2)连接表,将pop表用tract_ID字段连接在tracts的属性表后。如图下图所示:
3)打开tracts层的属性表,查看其属性字段,发现pop表中的“人口”字段添加在属性表的最后。
4)利用ArcMap的属性查询功能查询感兴趣行政区内的人口;
5)删除连接。
3.CAD 数据与ArcGIS数据格式转换
CAD 数据是一种常用的数据类型,例如大多数的工程图、规划图都是CAD 格
式。ArcGIS 中的要素类、Shapefile 数据可以转换成CAD 数据,CAD 数据也可以转换成要素类和地理数据库。
ArcGIS数据转换为CAD 格式:将ArcGIS要素类或者要素层转换成CAD 数据。
1)展开Conversion Tools 工具箱,打开To CAD 工具集,双击Export to CAD,打
开Export to CAD 对话框(如下图);
2)在Input Features 文本框中选择需要转换的要素,可以选择多个数据层,在Input
Features 文本框下面的窗口中列出所选择的要素,通过窗口旁边的上下箭头,可
以对选择的多个要素的顺序进行排列;
3)在Output Type 窗口中选择输出CAD 文件的版本,如DWG_R2004;
4)在Output file 文本框键入输出的CAD 图形的路径与名称;
5)Ignore Paths in Tables 为可选按钮(默认状态是不选择),在选择状态下,将输出
单一格式的CAD 文件;
6)Append to Existing Files 为可选按钮(默认状态是不选择),在选择状态下,
可将输出的数据添加到已有的CAD 文件中;
7)如果上一步为选择状态,则在Seed File 对话框中浏览确定所需的已有CAD 文件;
8)单击OK 按钮,完成操作。
将CAD 数据转换成ArcGIS要素类和数据表。
1)展开Conversion Tools 工具箱,打开To Geodatabase 工具集,双击Import to CAD,
打开Import to CAD 对话框(如下图);