地图数据区域使用以下两种类型数据。
空间坐标数据
空间坐标数据是一系列定义地图元素的坐标集合。每一个图层都必须包含空间坐标数据-多边形,线和点。
空间坐标数据内嵌到地图内或者链接到地图图层。两者的区别只在于地图内嵌的空间坐标数据不需要在移动报表目录或者切换机器时一起移动单独的空间坐标数据文件。
l 内嵌空间坐标数据
可以通过下面的方法内嵌空间坐标数据:
n 内嵌ESRI图形文件或者数据集:可以在地图层数据属性对话框中选择空间数据源内嵌选项或者在地图选择地图模板向导中选择ESRI文件…选项中导入ESRI文件。同样的为图层提供空间坐标数据的数据集可以一样导入。还可以使用图层的Embed Spatial Data选项内嵌空间坐标数据。详情参见图层使用章节。
n 自定义数据:当添加一个新的图层时可以在LayerDesigner集合编辑器去手动设置空间坐标数据,如此添加的数据会自动内嵌到地图中。
l 外部空间坐标数据
可以通过下面的方法链接外部空间坐标数据:
n 远程或者本地ESRI文件:可以使用地图层数据属性对话框的链接选项或者使用属性窗口的Files属性指定本地或者远程的ESRI文件路径,使文件与地图层链接。但是在移动报表到不同工程或者机器时需要保持与ESRI文件的链接。
n 报表数据集:当使用报表数据集提供地图层的空间坐标数据时不需要内嵌为空间坐标数据,其将作为外部资源。当移动报表到不同工程和机器时需要一起移动数据集文件。
ActiveReports提供了多种方法添加空间坐标数据到地图上。可以使用地图向导的选择地图模板中ESRI文件项或者使用地图层数据属性对话框的高级选项,同样可以使用属性窗口添加空间坐标数据。
使用地图向导添加空间坐标数据
1. 从Visual Studio工具箱拖拽一个地图Map控件到设计界面。
2. 在选择地图模板下选择ESRI文件…。
3. 在弹出的打开对话框中,指定到包含.shp和.dbf文件的目录,然后选择.shp文件。可以使用地图分辨率工具条简单预览数据然后点击打开按钮。
此选项会自动导入文件中空间坐标数据并且创建相关联的地图层。
使用地图层数据属性对话框添加空间坐标数据
地图层数据属性对话框提供了下面的高级选项用于添加控件坐标数据。详情参见地图章节。
l 内嵌:当需要添加的空间坐标数据来源于自定义添加的空间坐标数据时可以使用此项。
使用内嵌选项从ESRI文件导入空间数据。
1. 在地图层数据属性对话框的常规页,选择内嵌然后点击浏览按钮。
2. 在弹出的打开对话框中,指定包含.shp和.dbf文件的文件夹。
3. 选中.shp文件,可以使用地图分辨率侧边栏简单预览数据,点击打开按钮。字段列表会获取从.shp文件中的字段。
4. 在数据集中设置数据集名称。
5. 在字段列表中点击添加(+)按钮添加一个新的空的空间字段。
6. 选中新添加的空间字段,在字段名称中输入字段的名称。
7. 在字段类型中设置新添加的空间字段的字段类型。
8. 点击确定关闭对话框。
注:为了在图层中使用新添加的空间字段,必须在LayerDesigner集合编辑器中提供每个图层需要的多边形,点或者线信息。 |
l 链接:当添加的空间数据不需要修改会添加的情况下可以使用此项。
使用链接选项从ESRI文件导入空间数据
1. 在弹出的地图层数据属性对话框中选中常规页,选择链接选项然后点击浏览按钮。
2. 在弹出的打开对话框中,指定包含.shp和.dbf文件的文件夹。
3. 选中.shp文件然后点击打开。
4. 点击确定关闭对话框。
l 数据集:当地图控件要使用的空间数据储存在数据集中时可以使用此选项。可以直接使用数据集的数据字段用于在地图上展示数据不需要对匹配字段进行设置。因此此选项提供了一个额外的选项用于分析不同的数据集。
使用数据集添加空间数据
1. 在弹出来的地图层数据属性对话框的常规页选择数据集选项。
2. 在数据集下输入数据集的名称。
3. 在字段名称下输入包含空间数据的字段名称。
警告:输入的空间数据字段不能包含任何括号和”=”符号 |
4. 点击确定关闭对话框。
l 分析数据:当需要在地图图层中添加分析数据时可以使用此选项。要使用此选项第一步需要设置用于分析数据的数据集,然后使用提供空间数据的数据集的空间数据字段。
使用分析数据添加空间数据
1. 配置用于地图控件的分析数据。参照下面的内容学习添加分析数据。
注:一旦分析数据被设置好,地图层数据属性对话框常规页的分析数据选项变为可使用。 |
2. 在地图层数据属性对话框的常规页选择分析数据选项。
3. 在字段名称下输入存储空间数据的字段名称。
警告:字段名称中不能包含任何括号和“=”符号。 |
4. 点击确定关闭对话框。
使用属性窗口添加空间数据
这些步骤的前提是在设计界面中添加好地图控件并且包含至少包含一个地图图层。如何添加图层详情参见使用图层章节。
1. 选中地图控件然后在属性窗口下点击Layers(集合)属性然后点击出现的(…)按钮。
2. 在弹出来的LayerDesigner集合编辑器对话框的成员下面选择要使用的地图图层然后展开右侧的SpatialData属性。
3. 在Type下可以选择下面提供的空间数据类型:
n Embedded:当添加自定义空间数据到地图图层上时可以使用此选项。第一步需要使用MapFiledDefinitionDesigner集合设计器添加空间数据字段,可以同FieldDefinitions属性打开MapFiledDefinitionDesigner集合设计器。然后使用PolygonDesigner集合编辑器,PointsDesigner集合编辑器或者LineDesigner集合编辑器添加空间数据例如点,多边形和线。这些编辑器对话框可以通过SpatialData下的Polygons,Points或者Lines属性打开。
n File:当需要从ESRI文件中导入空间数据时可以使用此选项。使用Source属性指定文件路径。
注:指定文件夹下必须同时包含.shp和.dbf文件。 |
n DataSet:当空间数据存储与数据集时可以使用此选项。此选项和地图层数据属性对话框中数据集选项一致。使用SpatialData下的打DataSetName属性设置数据集的名称和使用SpatialField属性指定包含空间数据的字段名称.
n DataRegion:当空间数据字段存储在数据集中时,可以使用此选项。等同与地图层数据属性对话框的分析数据选项。使用LayerData下的DataSetName属性指定数据集名称和使用SpatialData下的VectorData属性指定包含空间数据的数据字段或者表达式。
4. 点击确定关闭对话框。
分析数据
分析数据用于在地图上可视化展示用的数据。例如城市旅游数据或者不同区域的产品销售数据。对于分析数据,可以通过地图层数据属性对话框的匹配框中与地图元素进行关联。可以在地图层数据的匹配框中设置一个或者多个字段。对应每一个空间数据字段都需要匹配一个独一无二的分析数据字段。此数据是可选的。
分析数据可以使用以下几种数据源提供。
l 数据集字段:数据集中的字段。
l 空间数据源字段:空间数据源中的字段,例如ESRI文件中经常包含空间数据和分析数据。空间数据源中的字段名称以#符号其实显示在字段下拉列表中。
l 地图元素内嵌数据:在报表内嵌多边形,线和点数据之后,可以选择地图元素的数据字段和定义自定义值。
添加分析数据到地图控件
使用下面的步骤将分析数据添加到地图控件。这些步骤的前提是已经添加好页面布局模板和连接好数据源。详情请参见在工程中添加ActiveReports章节和添加报表数据源章节。
1. 添加空间数据到地图控件。根据下面的部分学习添加空间数据到地图控件。
2. 在地图层数据属性对话框的分析数据页。
3. 从数据集下拉列表中选择要使用的数据集然后点击添加(+)按钮添加匹配字段。此操作会创建一个空的匹配字段表达式,这会使空间字段和分析字段选项变为可使用。
4. 在空间字段和分析字段选项中设置空间数据和分析数据存储相同数据的字段。这会创建匹配字段表达式并且关联分析数据到地图图层中地图元素。
注:要使用分析数据中的空间数据字段或者要在地图图层中可视化分析数据都有设置匹配字段。匹配字段能够是报表引擎创建分析数据与空间数据的关联关系。 |
5. 点击确定关闭对话框。