高级统计图

阅读(19709) 标签: 高级统计图,

高级统计图包括:双轴柱线图、双轴折线图、时间走势图、时序状态图、甘特图、仪表盘、立体仪表盘、雷达图、里程碑图、工字图、全距图。本节将重点介绍这几种高级统计图的具体使用方法,并附带一个实例。

双轴柱线图

在一些业务需求中,为了对两套数据进行清晰的比较,需要在一条横轴上同时展现两套数据。在润乾报表中,针对这种需求提供了双轴柱线图和双轴折线图。

 

双轴柱线图的效果如下图所示:

112

在这个图表中,柱表示运货费,线表示订单数。左侧纵轴为柱的纵坐标,右侧纵轴为线的纵坐标,柱和线共用下方横轴。

这种图表适合在共用一条横轴的两套数据同时展现时使用。

通过“报表”-> “数据集”菜单,对报表添加ds1数据集,生成的SQL语句如下:

SELECT 订单.货主地区,订单.订单ID,订单.运货费 FROM 订单 WHERE  订单.货主地区 is not null

设计模板如下:

下方的A3单元格中的统计图定义如下:

其中的分类轴即为图中的横轴定义,两个系列分别为柱和线的定义,第一个为柱,第二个为线。

在【图形特性】中可以为双轴设置不同的数据显示格式,多种格式以分号分隔。

其他属性和选项无特别之处,与一般图表相同。我们这里介绍一下统计图的配色方案。所谓统计图的配色方案是指画统计图时使用的图形颜色。报表设计器自带了color1color2等多种配色方案,用户可以根据自己的喜好添加新的配色方案,或修改报表设计器中自带的配色方案。点击菜单栏中的工具-配色方案打开统计图配色方案窗口,在此窗口中可以添加新的配色方案或修改已有的配色方案。如下图所示:

例如添加一种新的配色方案,编辑完了统计图配色方案后,点击【保存】按钮,您对统计图配色方案的修改就会保存到配色方案文件color.properties(配色方案文件默认的存放位置:

报表设计器默认安装路径\report\config\color.properties)。我们在设计器中预览报表时可以看到各种配色方案效果,但把报表发布到服务器上以后却只能看到默认配色方案效果。要想在服务器端看到我们编辑的各种配色方案效果,需要在报表设计器默认安装路径\report\webapps\demo\WEB-INF\classes文件夹下新建一个config文件夹(如果classes下有config文件夹就不用新建了),然后把配色方案文件color.properties拷贝到config文件夹中。

 

各种文件路径区分大小写。如果文件路径中大小写错误就不能正确定位到此文件。

 

重新启动报表设计器,在统计图属性定义界面中,切换到“显示外观”标签页,在“统计图配色方案”下拉框中选择统计图的配色方案。如下图所示:

如果选择统计图的配色方案为color1,则本例中的双轴柱线图发布后效果如下所示:

 

如果选择统计图的配色方案为color6,则本例中的双轴柱线图发布后效果如下所示:

双轴折线图

双轴折线图与双轴主线图一样,都是为了对两套数据进行清晰的比较,只是在展现形式上有所不同而已,双轴折线图采用了两条不同颜色折线来展示不同的数据。

双轴折线图的效果如下图所示:

113

在这个图表中,两条线分别表示运货费和订单数。左侧纵轴为运货费的纵坐标,右侧纵轴为订单数的纵坐标,两条线共用下方横轴。

这种图表适合在共用一条横轴的两套数据同时展现时使用。

 

本例的数据集为ds1

SELECT 订单.货主地区,订单.订单ID,订单.运货费 FROM 订单 WHERE  订单.货主地区 is not null

设计模板如下:

下方的A3单元格中的统计图定义如下:

其中的分类轴即为图中的横轴定义,两个系列分别为两条线的定义。

其他属性和选项无特别之处,与一般图表相同。

时间走势图

在一些业务需求中,经常会遇到随时间变化而变化的大量数据。由于数据量非常大,画数据随时间变化的统计图时,如果每条数据都描点,会使图表非常难以辨认。在润乾报表中,专门针对这种需求提供了时间走势图。

 

先看下图这组数据:

这只是很少一部分数据,完整的数据量非常大。

在一些业务需求中,经常会遇到这种随时间变化的大量数据,往往数据量非常大,画出数据随时间的变化图,如果每条数据都描点,会使图表非常难以辨认。在润乾报表中,专门针对这种需求提供了时间走势图表,其效果如下图所示:

这个图表现了几年时间内销售数量的详细变化过程,其中横轴为时间,纵轴为销售数量。

这种图表在其设计过程中,可以选择数据的取样间隔,进而选择图像的精细度。尤其适合于表现长时间内大量数据的详细走势。

 

本例的数据集为ds1

SELECT 订单.订购日期,订单明细.数量 FROM 订单,订单明细 WHERE  订单明细.订单ID = 订单.订单ID

 

该报表的设计模板如下:

其中A2单元格的表达式为:=ds1.select(订购日期:-1,订购日期!=NULL && 数量!=NULL)

12行是不可视的。

下方的A5元格中的统计图定义如下:

其中的分类轴即为图中的横轴定义,系列即为纵轴定义。注意这种图表的分类轴只能是时间。

在其他特性标签页中,“时间走势图横轴坐标取值”组已经被激活。

这个是专供时间走势图的选项,用来定义横轴的属性。点击添加可以添加横轴属性定义。

起始值和结束值用来定义横轴左右端点的取值,取样间隔和单位定义数据的取样时间间隔,标签间隔和单位定义横轴坐标标签的间隔和单位。

其他属性和选项无特别之处,与一般图表相同。

时序状态图

先看下图这组数据:

30

这组数据记录了三个频道在各个时间段的状态。

对于这种数据,为了能直观的看出每个频道在各个时刻的状态,并能方便的比较查看各个频道的状态,润乾报表提供了时序状态图,其效果如下图:

31

在这个图表中,横轴表示时间,几条柱形分别代表左侧纵轴上的几个频道,各种颜色即表示在该时间的状态。

 

在这个示例中我们使用的是内建数据集ds1,其结构如下:

134

135

该报表的设计模板如下:

133

其中12行是不可视的。

下方的A3单元格中的统计图定义如下:

在时序状态图类型的设置过程中,分类轴和系列不再可用。取而代之的是下方的“时序状态图、甘特图及里程碑图数据”组,在这里可以设置时序状态图的起始和结束时间,分类表达式即对应纵轴的值,这里即“频道”,状态表达式即对应各种颜色,这里即“状态”。

在其他特性标签页中,“时间状态图或甘特图”组已经被激活。

这里可以定义状态条的高度和横轴时间的精度。

其他属性和选项无特别之处,与一般图表相同。

甘特图

甘特图通过条状图来显示项目、进度和其他时间相关的系统进展的内在关系随着时间变化的情况。其中,横轴表示时间,纵轴表示活动(项目)。线条表示在整个期间上计划和实际的活动完成情况。甘特图可以直观地表明任务计划在什么时候进行,及实际进展与计划要求的对比。管理者由此可以非常便利地弄清每一项任务(项目)还剩下哪些工作要做,并可评估工作是提前还是滞后,亦或正常进行。

 

甘特图的效果如下图所示:

118

这个图表现了公司的某个项目的进度实施情况与预期计划的比较。

在这个图表中,横轴为时间,左侧纵轴为任务的各个阶段,图中的黄色柱代表每项任务的预计完成用时,绿色柱表示实际完成用时。

甘特图的数据与时序状态图的很类似:

51

 

在这个示例中我们使用的是内建数据集ds1,其结构如下:

137

138

该报表的设计模板如下:

其中12行是不可视的。

下方的A6元格中的统计图定义如下:

在甘特图的设置过程中,分类轴和系列不再可用。取而代之的是下方的“时序状态图、甘特图及里程碑图数据”组,在这里可以设置时序状态图的起始和结束时间,分类表达式即对应纵轴的值,状态表达式即对应几种状态颜色。

在其他特性标签页中,“时间状态图或甘特图”组已经被激活。

这里可以定义状态条的高度和横轴时间的精度。

其他属性和选项无特别之处,与一般图表相同。

仪表盘

仪表盘图的效果如下图所示:

115

图中指针指向的位置是当前的数值。

这种图表实质上和直角坐标图没有区别,只是把原来的横轴画成了圆形,横轴的值就标度在圆周上,纵轴的值用颜色涂在圆周上。需要注意的是图中的指针,指针的那条数据不能成为圆上的一种颜色,所以必须严格区分。

在润乾报表中,将需要作为指针位置的那条数据的纵轴对应值写为“value”,就可以被识别为指针位置

上图的数据如下:

36

 

在这个示例中我们使用的是内建数据集ds1,其结构如下:

141

142

该报表的设计模板如下:

140

其中12行是不可视的。

下方的A3单元格中的统计图定义如下:

其中的分类轴和系列的设置与简单的二维图完全一样,分类轴即为圆周上刻度的定义,系列即为圆周上颜色的定义。

其他属性和选项无特别之处,与一般图表相同。

立体仪表盘

将仪表图采用三维立体形式展示出来,增加统计图的立体感。具体设置同仪表盘一致,只需在选择统计图类型时选择【立体仪表盘】,其余步骤均与仪表盘一致。

雷达图

雷达图的效果如下图所示:

116

图中圆周为各个项目,径向为相应项目的得分。

这个图表直观的表现了一个产品在各个方面的表现,并可以直观的估计产品的综合价值,有时候我们可以直接拿中间的多边形的面积做为产品综合质量的参考。

上图的数据如下:

40

 

在这个示例中我们使用的是内建数据集ds1,其结构如下:

144

145

该报表的设计模板如下:

其中12行是不可视的。

下方的A3单元格中的统计图定义如下:

其中的分类轴为图中圆周上各个项目的定义,系列为径向数值的定义。

其他属性和选项无特别之处,与一般图表相同。

里程碑图

里程碑图的效果如下图所示:

117

这个图表现了公司的某个项目的进度完成情况与预期计划的比较。里程碑图与甘特图类似,只是甘特图中任务完成的全部时间段都要画出柱形来表示,而里程碑图只考虑任务完成的时间点。

在这个图表中,横轴为时间,纵轴为任务项目,黄色方点为预期的完成时间,绿色圆点为实际的完成时间,从这个图可以直观的看出某个任务项目是否按期完成。

该表的数据如下:

53

 

在这个示例中我们使用的是内建数据集ds1,其结构如下:

146

147

该报表的设计模板如下:

其中12行是不可视的。

下方的A3单元格中的统计图定义如下:

在里程碑图的设置过程中,分类轴和系列不可用。取而代之的是下方的“时序状态图、甘特图及里程碑图数据”组,在这里可以设置里程碑图的计划完成时间和实际完成时间,对应的就是图中方点和圆点的横向位置,项目表达式即对应纵轴的值。

在其他特性标签页中,“时间状态图或甘特图”组已经被激活。

这里的状态条高度选项是没有用的,时间刻度选择才是有用的,用来调节横轴刻度的单位。

其他属性和选项无特别之处,与一般图表相同。

工字图

为了满足用户表现一组数值的变化范围、均值和当前值等数值的大小比较关系的需求,润乾报表提供了工字图。

工字图的效果如下图所示:

58

该图表现了公司各个销售员的销售订单总价情况。

如下图所示。在这个图表中,横轴为各个员工,纵轴为订单总价金额,每个“工”字的上面一横表示订单总价的最大值,下面一横表示订单总价的最小值,红点表示平均值,黄点表示当前值的位置。这个当前值可以由用户随意指定,用来放在图表中与整体数据比较,本例中用参数查询指定为西南地区的订单总价。靠近0轴线的红绿条子表示差值,即当前值与平均值的差值,为了便于比较而放在0起点的横轴上,正值为向上的绿色条子,负值为向下的红色条子。

114

这种图表尤其适合于用来表现一组数值的变化范围、均值和当前值等数值的大小比较关系。

该表的数据如下:

60

 

本例的数据集为ds1

SELECT 订单.货主地区,雇员.姓氏 || 雇员.名字 as 姓名,  订单明细.数量 * 订单明细.单价 订单总价 FROM 雇员,订单,订单明细 WHERE 雇员.雇员ID = 订单.雇员ID  AND  订单.订单ID = 订单明细.订单ID AND  雇员.名字 !='英玫'

设计模板如下:

其中12行是不可视的。

下方的A3单元格中的统计图定义如下:

其中的分类轴即为图中的横轴定义,在添加了分类轴后,下方会自动添加四个系列,而且不能更改,因为这是工字图的规则。四个系列分别指定最大值、最小值、平均值和当前值,后面的系列标题就是系列显示在图表中的标签,可以随便取。

其他属性和选项无特别之处,与一般图表相同。

当然在这个例子中,也可以不用在报表中计算出最大最小值等,直接把max(订单总价)写入系列值中也可以。

全距图

全距图的效果如下图所示:

66

这张图表示了员工李芳完成的订单总价在所有员工的水平中处在的位置。

图中横轴表示订单总价,没有纵轴,横向的柱表示所有员工的订单总价的范围,左端为最小值,右端为最大值,中间的黄色分割线为平均值,左侧比平均值低的部分为红色,右侧比平均值高的部分为绿色,蓝色的稍长一点的分割线为所查询的员工李芳处在的位置。

全距图与工字图很类似,它就相当于把工字图中的一个“工”字拿过来横放。不过在这个例子中,业务逻辑并不与工字图中的相同。

该表的数据如下:

63

 

本例的数据集为ds1

SELECT  雇员.姓氏 || 雇员.名字 as 姓名, 订单明细.数量 * 订单明细.单价 订单总价 FROM 雇员,订单,订单明细 WHERE  雇员.雇员ID = 订单.雇员ID  AND  订单.订单ID = 订单明细.订单ID

设计模板如下:

其中12行是不可视的。

下方的A4元格中的统计图定义如下:

其中的分类轴定义没有意义,因为只有一条数据,一个分类。在添加了分类轴后,下方会自动添加四个系列,而且不能更改,因为这是全距图的规则。四个系列分别指定最大值、最小值、平均值和当前值。

全距图中不会显示图例,所以系列并没有系列标题可选。

其他属性和选项无特别之处,与一般图表相同。