标签:报表 数据处理 finereport java web
以FineReport软件为例
在企业的信息数据中,对于那些业务遍布全国的企业来说,无疑可以直接使用我们的内置中国地图来直观展现,但是对于展示没有内置地图的数据的,比如说通过地图展示县级市数据,我们则可用过自定义地图实现。
将自定义的图片上传至FineReport,在FineReport中定义好图片上对应区域或者对应点的名称,此时上传的图片就被转化成了和FineReport内置的图表具有相同属性的文件,再设置好要展示的图表数据,就可以跟FineReport内置的图表一样,可以数据点提示,可以联动,可以传参,自定义好的地图,会自动保存为当前报表工作目录中的一种地图样式,重复使用。
某公司的业务数据都在泉州市,希望通过泉州地图来实现点击某一个县的时候,同时会出现
数据准备
新建2个数据查询,一个用做地图的数据源,一个用做折线图的数据源。
ds1:SQLSELECT avg(指数) as 平均指数,城市 FROM map_泉州数据 group by 城市。
ds2:SQLSELECT * FROM map_泉州数据 where 城市=‘${city}‘,参数默认值为安溪县。
自定义地图
合并一片单元格,点击菜单栏中的
,选择地图,点击确定。地图类型
由于我们要制作的地图是泉州市地图,但是泉州市地图并不在我们内置地图中,即可使用自定义地图。
选中地图,在右侧上方的属性面板中选择
,点击按钮,选中添加自定义地图,如下图:选中新建好的自定义地图,点击,选择
,如下图:在弹出的对话框中导入准备好的地图图片,如下图:
注:用户新上传的地图只支持svg格式的上传,图 片保存在resources\chartmapsvg\user-defined目录下。
双击图片中的每一块区域,将其命名,可以直接选取数据库中的,也可以直接手动书写,命名好之后,点击保存,如下图:
所有区域都添加完成之后,点击确定,回到图表属性面板,再次点击,可编辑自定义地图名称,我们这里将自定义地图命名为泉州市地图。
到此,泉州市地图则定义好了,属性表的地图列表中有了泉州市地图,可以用在任意报表中。
注:自定义地图的数据保存在resources\chartmapsvg\user-definedresources\chartmapsvg\user-defined目录下的svg文件中,如果在另外一个报表工程中需要使用该自定义地图,则将该文件复制过去然后重启报表服务就能生效。
地图数据
定义好地图之后,需要给地图定义数据源,选中地图,点击
,我们这里不需要实现地图的钻取,则 直接使用默认的 即可,数据设置如下图:保存之后,地图就做好了,下面制作跟地图联动的折线图。
折线图
在地图的右侧合并一片单元格,插入折线图,表样式如下:
折线图数据来源
为折线图设置数据来源,数据集为ds2,分类轴为月份,系列名使用字段名,字段名为指数,如下图:
折线图样式设置
为折线图设置动态标题,即当点击泉州市的某个县时,折线图的标题也随着变化,设置如下:
交互属性设置
地图和折线图都制作好了,由于要实现地图与折线图之间的联动,则需要在
添加超级链接。选中地图,在交互属性中添加超级链接
,如下图设置:保存与预览
保存模板,点击分页预览,即可看到上面所示的效果,模板效果在线查看请点击
已完成模板可参见:%FR%\WebReport\WEB-INF\reportlets\doc\Advanced\Chart\Map_relate.cpt。
标签:报表 数据处理 finereport java web
原文地址:http://10023971.blog.51cto.com/10013971/1675373