MapInfo是个功能强大,操作简便的桌面地图信息系统,它具有图形的输入与编辑、图形的查询与显示、数据库操作、空间分析和图形的输出等基本操作。系统采用菜单驱动图形用户界面的方式,为用户提供了5种工具条(主工具条、绘图工具条、常用工具条、ODBC工具条和MapBasic工具条)。用户通过菜单条上的命令或工具条上的铵钮进入到对话状态。系统提供的查看表窗口为:地图窗口、浏览窗口、统计窗口,及帮助输出设计的布局窗口,并可将输出结果方便地输出到打印机或绘图仪。
一、图形的输入与编辑
图形的输入是将各种地图信息数据进行数字化或转换,以获得MapInfo的基本图形数据组织——表。随数据源的不同可用手扶数字化仪、扫描仪输入或其它标准数据格式转入。如AutoCAD的(.DXF和.DWG)、Intergraph的(.DGN)、ESRI的ArcView Shape数据等。
利用MapInfo提供的绘图工具条,对地图数字化输入与编辑的要点为:
1.正确设置地图的坐标系、投影、地图方向和单位
MapInfo支持多种地图投影方式。用户数字化地图时,首先要设定该地图使用的坐标系和投影。由于大多数地图在图例中已指出这两项,用户可选择MapInfo提供的坐标系(存放在文本文件MAPINFOW.PRJ中),修改MAPINFOW.PRJ可得到新的坐标系。若要在MapInfo中显示栅格地图,必须配准该图象并为其设定投影。由于投影地图的过程通常不是完全可逆的,应该做好副本的备份工作;其次要根据选用的坐标系,设定使用的地图单位,例如经/纬度投影中的地图将以度显示地图坐标。
2.设置控制点坐标
为了在跟踪地图时能正确判读数字化仪移动头的位置,必须在地图上设置控制点坐标参数。至少选择4个控制点,控制点越多,从数字化板到地图的坐标变换越精确。选择的控制点离散性要好,如不能在一条直线上。可以在系统中增加、修改、删除控制点,并把控制点保存在工作空间中。
3.绘图和编辑工具
MapInfo具有一套完整的绘图和编辑工具,如图8-2所示。对图层进行编辑时首先要从地图菜单中选择“图层控制”命令或用“图层控制”工具按钮,使该图层处于可编辑的状态。
4.利用对地理元素整形方式编辑地图
地图编辑方式可对地图图层上的区域、折线、直线、圆弧和点进行整形。这个过程是通过移动、增加和删除定义线段的节点来完成的,也可通过复制和粘贴选择的节点来创建新的点、直线和折线。编辑过程中还可利用区域与折线的相互转换功能来查看区域对象的结点,或者利用合并、分割、擦除和叠压结点等辅助编辑功能。
5.使用自动跟踪地图的功能
自动跟踪对象的功能,用来自动跟踪获取重复边界,以避免重复数字化。打开对齐方式(用S键)则可激活自动跟踪。自动跟踪不适于跟踪由绘图工具制作的矩形、圆弧、椭圆等图形。
二、MapInfo数据表管理
在MapInfo中数据库称为表,可以使用两种表来建立、存储、查询和显示属性数据。一种是数据表,可分为包含图形(地图)对象的数据表和不包含图形对象的数据表,例如电子表格或外部数据表;另一种表是栅格表,它是一种只能在地图窗口中显示的图象,没有数据表的记录、字段和索引等表结构。这里我们只讨论数据表的有关操作。
1.外部数据的转入
MapInfo可调用dBASE数据库、MS Excel电子表格、MS Access数据库、Lotus1-2-3和ASCll文件等。文件类型在菜单上文件->打开中的“打开表”窗口中选择。进入系统的外部表必须用文件菜单下的“另存为”命令转存为MapInfo表后才能对它进行编辑。
2.数据表维护
在MapInfo中可以直接改变数据表的结构,如增加或删除字段;改变字段的顺序、名称、类型、宽度或索引;从对话框中设定或确定表的投影;还可以删除数据表、重命名数据表和紧缩表结构以减少磁盘空间。
3.对数据表的操作
MapInfo的表操作命令(除查询外)都集中放在菜单项“表”中,主要包括:
(1)建立新表、添加、修改、显示、删除数据记录;
(2)更新列命令 用于快速且可视化地更新表。先选择对象,在菜单上选择表->更新列,填写更新列的对话框。
(3)聚合数据 MapInfo中提供了许多功能强大的聚合函数,用来派生新的信息。聚合函数包括:
Average 计算平均值;
Count 计算一组中记录的个数;
Minimum 查找一组中所有记录的最小值;
Maximum 查找一组中所有记录的最大值;
Sum 计算一组中所有记录值的总和;
Weighted Average 当计算平均值时,给某一值比另一值更高的权重;
Proportion Sum 根据一个对象有多少在另一个对象内,对总计计算进行调整;
Proportion Average 根据一个对象有多少在另一个对象内,对平均计算进行调整;
Proportion Weighted 根据一个对象有多少在另一个对象内,对加权平均计算进行调整。
(4)地理编码 这是将原本非地图化的数据库记录显示在地图中的一种方式,以此查看数据的地图分布。为了在地图上观察数据,必须先把定位坐标赋给每个记录,使记录中数据与地图匹配。地理编码有几种不同的方法,这里对“按边界地理编码”方法说明。这里“边界”指封闭的区域或面积。“按边界地理编码”的实质是将边界中心的X和Y坐标赋给表中的每个数据记录,这样,就能在地图窗口中各边界中心用指定的符号显示数据记录。一旦地理编码完成,可用“查找”命令来定位单个记录或对象。
三、查询功能
MapInfo系统为用户提供了强大而灵活的查询功能,在系统中称为选择(Selection)功能。通过选择既可以直接从地图上查询到相应数据表的信息,也可以利用系统提供的SQL Selection从数据表查到相应的数据和地图信息。系统用一个临时表(Selection表)存放选择的结果,对于临时表也可执行很多用于基础表的操作,如浏览、统计、复制或编辑表,还可进一步生成新的Selection。
1.从地图上选择
(1)用主工具条中的工具和菜单命令进行选择,主要的选择工具有:
上面介绍的任何一种选择工具均可选多个或全部对象(选多个对象时需按住Shift键,逐个点击要选的对象);从“查询”菜单中选“全部选中”命令也可选中所有对象。选“全不选”命令撤消所有选择对象。当要查看所选数据的信息时,可以从“新建浏览窗口”命令调出对话框,选择所选数据的“Se,lection表”。
(2)用查看地图信息的工具,如用信息工具查看所击中的地图对象相应的数据信息;用图例工具查看当前的地图所使用的图例;用标尺工具计算并显示地图上的点之间的距离等。
2.用QL Se,lection进行选择
(1)选择命令
使用“查询”菜单上的“选择”命令,可对单张基础表进行查询。根据用户创建的条件,从表中选择出结果,并在地图窗口中显示出所选记录的地图对象。所选择出的表同其它表一样可进行浏览、查询、地图化或制作统计图。用“另存为”命令创建结果表。
(2)S,QL选择命令
S,QL选择命令能对一张表或多张表进行复杂查询。它与选择命令不同之处在于前者只能从单张基础表中选出信息,其结果是原有记录按一定条件的组合,而后者可以创建隐含在多张基础表中的新数据子集。S,QL查询是在“查询”菜单上选中“S,QL选择”命令,按图8-3填写“S,QL选择”对话框,包括:
·指定要从中选择记录的表,如选择表:东南沟小班;
·选择显示在结果表中的列(* 号表示选中所有的列),图中选择列:林班,小班,面积;
·创建一个用于选择记录的逻辑表达式,如创建条件:面积<100 And树种=“柞树”Or树种=“油松”,并用“检验”铵钮检验语法是否正确;
·如果需要对查询结果进行按列分组或排序,则选择用来分组或排序的列,缺省情况下查询结果并不分组或排序;
·如要存放结果的Se,lection表命名,则在对话框中“结果放入表”后的文本框内修改缺省的表名;
·查看所选记录的列表,选中“浏览结果”框。
点中“确定”执行后,MapInfo为S,election表创建一个浏览窗口,显示选择出来的记录,同时地图窗口中显示相应的地图对象。MapInfo给此表命名为Q,ueryl,下一个创建的为Q,uery2,依此类推,也可以用自己取的名字替换缺省名称。
在“S,QL选择”对话框中,条件一项用标准的S,QL语言填写,右边的“运算符”、“聚合”和“函数”是帮助写S,QL的下拉列表。
进行S,QL查询时涉及内容还包括:
连接表:用S,QL选择创建表之间的关系连接,能把来自不同数据库的信息放入一张单独的表中。连接两张表的方法可以是利用含有匹配信息的列(共同字段),也可以指定地理连接。当两张表都有图形对象时,MapInfo能在对象间空间关系的基础上匹配记录。
按列分组:用来创建分类汇总,它是把查询表中的行分组,使得指定列上数值相同的所有行被分成一组,在与聚合函数(count,sum,avg,min,max)一起使用时,分组列有相同数值的行被作为一组,重复的行被压缩,聚合值则形成派生列。
按列排序:用来指定顺序,缺省时按照升序数值(在字符字段中按字母顺序)排列记录。
地理运算符:它允许根据对象间的空间关系选择对象。这是MapInfo S,QL的独特之处,它使用的关键字是“obj”或者“object”,该关键字告诉MapInfo是基于地理对象,而不是基于表格数据的运算来获得数值。
地理运算符放在指定对象之间,其内容为:
其中,对于Contains和Within,对象的比较是基于中心的,而对于Contains Entire和Entirely Within,比较是基于整个对象。
子选择:MapInfo允许在S,QL选择中使用子选择,即嵌套的S,QL。子选择是放在条件框中的选择语句,运行时先计算子选择,再用其值来计算主S,QL选择。子选择通常与地理运算符结合在一起使用,以增强其效果。例如:有一张全国各省1998年的人口表province和一张包含各省所有的城市表city,由于城市表中的地理对象完全包含在省表的地理对象中,当查找所有人口大于5 000 000的省中的所有城市时,复合条件表示为:
obj within any(se,lect obj from pr,ovince where population_98>5 000 000)
表达式中population_98是省表中表示1998年人口的字段名,obj、any都是MapInfo中的关键字,子选择的运算结果将所有人口大于5 000 000的省选择出来,any使得子选择返回一个且仅有一个列(关于S,QL语言用法参见有关S,QL手册)
四、分析功能
MapInfo的主要分析功能为地域搜索查询、创建地图对象、缓冲区分析和重新分区等。
1.缓冲区分析
缓冲区是地图窗口中包围一个线对象、区域对象、符号对象或其它任何对象的区域。例如在大江大河周围建立缓冲区作为非居住区,防止洪水暴发时危及人生安全等。
作缓冲区分析时,首先使当前图层处于可编辑状态,然后选中作为缓冲区基础的一个或多个对象,然后选择“对象”菜单中的“缓冲区”命令,调出图8-4“缓冲区对象”对话框。
“缓冲区对象”对话框的内容为:
·指定缓冲区半径。缓冲区半径确定了缓冲区的大小,它可以是常数值或表中的一个字段或一个表达式;
·设定每个圆的弧段数(缺省值是12弧段/圆)。弧段数决定了缓冲区的细致程度,数值越大细致程度越高,但创建缓冲区所需的时间就越长;
·指定缓冲区类型。可为所有对象建立一个缓冲区,也可为每个对象各建立一个缓冲区。前者将生成的所有缓冲多边形当成一个多边形,当选中一个缓冲多边形时,所有缓冲多边形都被选中;后者可分别生成多个多边形,可任意选择其中的一个多边形。
创建的缓冲区可放在当前可编辑图层中作为可搜索对象处理。
2.创建地图对象
使用MapInfo的高级编辑功能,可以用“设置目标+操作”编辑模式,进行合并、分割、擦除地图对象及叠压结点,这一模式允许用相同表或不同表中对象创建新的对象。
“设置目标”编辑模式为:
选取一个地图对象,从“对象”菜单上用“设置目标”命令将其设为编辑目标;
选择另一个对象或多个对象作为编辑操作的“剪切器”;
将“剪切器”覆盖在目标上,并对目标进行编辑操作,生成一个或多个新的对象来取代原来的目标对象。如果被编辑的对象有附属数据,可以将各字段数据按比例分配给新创建的对象。
图8-5为对两个地图对象的编辑操作,其中设A为目标对象,B为剪切器。
3.对地图对象重新分区
MapInfo的重新分区命令是将地图对象按一个共同的字段组织成分区或区域,以创建新的分区,重组已存在的分区。同时对附属的数据不断迅速进行计算,以便用户及时作出分析和决策。
重新分区能创建一幅以分区名为变量的独立值专题地图,同时分区信息也以表格形式显示在一个特殊的分区浏览窗口中。它并不创建新的地图对象或永久改变地图对象的样式,而只是一个动态的分组工具。如果对分区的结果满意,可以将分区分配永久化。重新分区的另一作用在于当单击一个地图对象并将其分配给另一个分区时,可以立刻在分区浏览窗口内看到各分区的记录数目和数据统计值。
五、使用布局输出地图
MapInfo提供的布局窗口功能,大大方便输出图的制作。布局窗口具有页面布局特性,它允许在一个页面上放置和安排地图窗口、浏览窗口、统计图窗口、消息窗口、图例窗口,还可以通过在布局窗口中增加标题或标注以供输出。并可将任何当前打开的窗口增加到布局中,通过移动和调整窗口尺寸可得到最佳的输出方式。
创建布局是在“窗口”菜单中选择“新建布局窗口”命令,由“新建布局窗口”对话框,提示用户选择要加入到布局中去的窗口,生成布局后再调整布局中各窗口的尺寸和位置来完成布局的设计。当布局已创建好后,若要向布局中加入任何当前打开的窗口,可通过将它们加入到框架中实现。用“框架”工具按钮为一个指定窗口建立新框架,从而将此窗口添加到布局中。布局设计好后,将布局窗口设置为活动状态即可打印。
MapInfo还允许灵活地自定义布局,可以选择是否始终显示布局框架中的内容,为布局设定页边距和页数,增加文字说明,以及为布局对象创建阴影。
图8-6是一张林业上的树种分布图的布局窗口,布局中包含两个窗口,地图窗口和图例窗口,并在装饰图层上用了说明性文字。
MapInfo不仅能用常规的方式输出满足用户需求的地图,还能将地图输出到Photoshop图象处理软件中。
本文标题:MapInfo基本功能
手机页面:http://m.dljs.net/dlsk/gisjiao/10614.html
本文地址:http://www.dljs.net/dlsk/gisjiao/10614.html