vbnet 水晶报表教程:对比FineReport之地图功能
- 格式:pdf
- 大小:880.77 KB
- 文档页数:12
vb.net水晶报表教程:对比FineReport之地
图功能
水晶报表(crystalreport)和FineReport都是很常用的报表工具,这里对比
一下它们的地图功能。水晶报表地图功能如下:
地图功能概述
通过CrystalReports,可以在报表中包含地理地图。地图能帮助更有效地分析报表数据和辨别
趋势。例如,可以创建一个按地区显示销售额的地图。于是可以:
使用五种地图类型之一分析数据。
调整地图的外观和结构(以便更好地确定趋势)。深化地图区域以查看基础数据。
地图类型
“地图专家”还提供了五种基本的地图类型,每一种适合于一种不同的数据分析策略。决定最适
合于报表的地图类型时,应该考虑希望分析的数据类型。例如,如果希望地图为每个地理区域(城
市、州、国家等)显示一个数据项,则可以使用“范围”、“点密度”或“分级”地图。反之,
如果希望地图为每个新地理区域显示一个以上的值,则可以使用“饼图”地图或“条形图”地图。下面是主要地图类型的概述及其最常见的应用。
范围
“范围”地图将数据划分成范围,为每一范围分配一种特定的颜色,然后将地图上的每一地理区
域编以色码以显示范围。例如,可以创建一个根据地区显示“去年销售额”的地图。如果销售额
范围为从0到100,000,可以给此地图五个相等间隔的范围,各个范围间隔为20,000。可以
根据其销售数字用不同深浅的红色(从深红色到浅红色)将每一地区编以色码。然后就可以使用
这个地图查看哪里销售额最高。
在相等间隔情况下,可能会得到这样的不良结果:除可能会有一个地区(例如加利福尼亚)销售
额特别高(比如说98,000)之外,所有地区都在0和20,000之间。这个地图会是对数据非
常扭曲的表现。较好的地图应这样确定范围,比如:0-5000、5000-10000、10000-15000、
15000-20000和20000以上。务必要仔细地对范围进行定义。
注意:每个等分区的结束值作为下一个等分区的起始值进行重复;实际值包含以它开始的分
组中。也就是说,上一个示例中的范围实际上是:0-4999、5000-9999,依此类推。
对范围地图,有四种不同的分配方式。
相等计数
此选项以这样一种方式分配间隔:每一间隔中显示相同的地区数(或者尽可能接近相同的地区
数)。换句话说,此选项将指定间隔以使地图上每一种颜色指定给相同的地区数。根据单个地
区及其汇总值,每一间隔中汇总值的数值量可能相等,也可能不等。
相等范围
此选项以这样一种方式分配间隔:每一间隔中的汇总值在数值上相等。根据单个地区及其汇总
值,每一间隔中的地区数可能相等,也可能不等。
自然中断
此选项使用特定算法分配间隔,该算法尝试使每个间隔的汇总值和汇总值平均数之间的差减到
最小。
标准偏差
此选项以这样一种方式分配间隔:中间的间隔在数据值的中数(或平均数)处中断,并且中间
范围以上和以下的间隔是中数以上或以下的一个标准偏差。标准偏差是方差的平方根。它表现一组值中的不同值怎样偏离此组值的平均数。
点密度
点密度地图为指定项目的每一次出现显示一个点。例如,可以创建一个“美国”地图,为该国每
一个造船厂显示一个点。象田纳西州这样的州中将没有点。然而,在一些沿海的州中,例如南加
利福尼亚,能够在地图上计算点的个数,因为它们的散布将相当宽。
“点密度”地图的目的是提供特定项目分布的整体印象。“点密度”地图很象一张美国的夜间卫
星照片,在那能看到所有城市的灯光。这样的地图不是一种很精确的交流信息的方式(特别是有大量的项目时),但它是给出分布概观的一种好的方法。
饼图
饼图地图显示每个地理区域的饼图。“饼图”代表组成一个整体的数据项目。饼图的每个扇区代
表一个单个的数据项,并显示该项目在总体中所占百分比。例如,可以创建一个按地区显示供热
燃料类型的“饼图”地图。可能有四种燃料类型(每一饼图中的四个扇区):电、煤气、木材和
太阳能。则每一地区将有一个显示该地区内供热燃料类型细分的饼图。由于华盛顿地区的水电,
该州可能使用高百分比(饼的大扇区)的电,而爱达荷州可能使用高百分比(饼的大扇区)的天
然气。
可以使用该地图类型比较特定区域内若干项目的分布情况。还可以指定成比例调整饼图大小,以
便象“分级”地图中的符号一样,根据基础数据值以不同的大小显示“饼图”。这使您能够比较地区间的总计。
条形图
条形图地图类似于饼图地图,但对于某些数据集也许更有用。通常,对于总和不是100%的项
目,也就是说,对于不构成一个整体的数据项目,或者无关的数据项目,将使用“条形图”地图。
例如,可以创建一个按地区显示供热燃料使用的“条形图”地图。可能选择分析三种类型的燃料
的使用:电、煤气和太阳能。地图上每一条形图可以包含每种类型的单个条。在本例中,数据项
目(电、煤气和太阳能)不构成一个整体。在这些地区,还可能使用其他类型的燃料,比如木材,
但该地图只集中注意其中三种。还有,这个地图的目的是将每一地区每一燃料类型的使用和其他
所有地区做比较。在“饼图”地图中,可以按其占每一地区中整体燃料使用的百分比显示这三种
燃料类型,这虽然能够比较每一地区的百分比,但是由于每一地区都将有相同的总值(100%),所以可能不能比较每一地区的实际值。
创建地图
根据正在为其制作地图的数据的不同,创建地图的过程有所不同。下面几节针对每一种地图布局详述地图制作过程。
基于详细资料字段制作地图(“高级”布局)
“高级”布局允许您基于特定值创建地图。使用“高级”布局,您可以使用报表“详细资料”节
的值来创建地图,而不必使用汇总字段。
若要创建基于“高级”布局的地图,您必须指定以下两方面内容:
条件(可以有两个)。值(必须只有一个值)。
条件
条件用于指明在地图上的什么地方绘制数据。条件必须是字符串字段。为了生成地图,该字段应
包含地理信息。例如,显示各个国家去年销售额的地图使用“国家”字段作为条件。每当条件更改(国家更改)时,地图上的这一区域就会突出显示。
值
“高级”布局使用值来指明当地图上的区域突出显示时,正在针对什么信息制作地图。例如,若要创建显示各个国家去年销售额的地图,“去年的销售额”字段便是值。
FineReport地图功能如下:
.问题描述
地图的钻取功能,如下图,首次访问显示全中国各省份数据。点击山东省,进入山东省
省地图,显示山东省数据,并在右侧的柱形图上显示展现该数据,实现联动效果。
2.实现步骤
2.1数据准备
新建2个数据查询ds1和ds2,:
ds1:SQL为SELECT*FROM[地图]。
ds2:SQL为SELECT*FROM[地图]wherepid='${provience}',provience参数
默认值为”江苏省“
2.2地图制作
添加地图
合并一片单元格,点击菜单栏中的插入>单元格元素>插入图表,选择地图,然后点击
确定,如下图:
地图类型
选中地图,在设计器右侧的图表属性面板图表属性表-类型选择地图类型,默认选择为国
家地图>中国。
注:设计器内置有三种地图,世界地图,国家地图以及省市地图,其中国家地图有两个,
中国和美国,省市地图为中国的各省市地图,如需自定义地图,则可导入自己准备好的地图
图片进行设计,详细请查看自定义地图。
区域对应
在FineReport的内置数据库中存有区域对应字段,即表示地图的区域名跟数据库中存
有的区域名的对应关系,比如说:中国地图,在地图类型处选中中国,点击设置按钮,选择
区域对应字段,默认的区域对应字段为各省市的全称,如下图:
如果数据中的区域名称跟内置的区域名称不一致,即要重新配置区域名称对应,如上图
所示,进入定义区域名对话框,可直接在右侧的数据库区域名中手动输入,也可选择数据集
之后,直接通过下拉框输入。
注:如果数据库中的区域名称跟设计器中内置的地图区域名称对应不上,在使用过程中
就会使用默认的区域对应关系,则无法获取到数据库中区域的对应数据。
地图数据
定义好地图的类型之后,就可以为地图定义数据来源了,选中地图,点击图表属性表-
数据,进入数据设置面板,地图展现方式选择多层钻取,如下图:
钻取层级设置
从上图可以看到,钻取层级下有个中国的文件夹,双击即可打开查看中国下面的省份,
选中中国文件夹,右击,则会跳出层级设置对话框,如下图:
图中的钻取对应地图表示该区域在钻取完成之后显示的地图,可手动输入,也可下拉框
选择,但是该地图必须是定义好的,即必须是内置的地图或者是自定义好的。
注:如果钻取层次不止两级,比如说钻取到福建省之后,还需要钻取到福建省下面的县
级市,但是我们内置地图只到省市,没有内置县级市的地图,这是时候就需要自定义地图,
即自定义县级市地图,然后选中福建省,右击,进入下层钻取设置,在钻取对应地图中选择自定义的地图。比如,自定义了一张泉州市地图,如下图设置即可钻取至泉州市:
钻取数据设置
点击底层数据,为每个层次的地图添加数据,如下图:
数据区间配置
数据区间配置如果选择自动,即设计器会根据数据的最大值最小值自动划分区。
我们这里选择自定义,主题颜色改为深绿色,划分阶段使用默认值5,区间段设置如上
图所示,如果需要修改区间段的颜色,点击色块即可修改。
2.3柱形图
合并一片单元格,点击插入>单元格元素>插入图表,选择柱形图,点击确定即可添加
一张柱形图。
柱形图数据来源
柱形图样式设计
给柱形图添加标题各地区利润额排名,如下图:
2.4联动设置
如上所述,地图和柱形图都已经设置好了,如果要实现联动,则需要在设置交互属性。
选中地图,在图表属性表中选择特效,点击交互属性,添加一个超级链接,即点击
,添加一个图表超链-联动单元格,设置如下图: