[Java报表软件—问题解析]Finereport数据地图之自定义地图 |
1. 描述
在企业的信息数据中,对于那些业务遍布全国的企业来说,无疑可以直接使用我们的内置中国地图来直观展现,但是对于展示没有内置地图的数据的,比如说通过地图展示县级市数据,我们则可用过自定义地图实现。
将自定义的图片上传至FineReport,在FineReport中定义好图片上对应区域或者对应点的名称,此时上传的图片就被转化成了和FineReport内置的图表具有相同属性的文件,再设置好要展示的图表数据,就可以跟FineReport内置的图表一样,可以数据点提示,可以联动,可以传参,自定义好的地图,会自动保存为当前报表工作目录中的一种地图样式,重复使用。
2. 示例
某公司的业务数据都在泉州市,希望通过泉州地图来实现点击某一个县的时候,同时会出现
2.1 数据准备
新建2个数据查询,一个用做地图的数据源,一个用做折线图的数据源。
ds1:SQLSELECT avg(指数) as 平均指数,城市 FROM map_泉州数据 group by 城市。
ds2:SQLSELECT * FROM map_泉州数据 where 城市='${city}',参数默认值为安溪县。
2.2 自定义地图
合并一片单元格,点击菜单栏中的插入>单元格元素>插入图表,选择地图,点击确定。
地图类型
由于我们要制作的地图是泉州市地图,但是泉州市地图并不在我们内置地图中,即可使用自定义地图。
选中地图,在右侧上方的属性面板中选择图表属性表-类型,点击按钮,选中添加自定义地图,如下图:
选中新建好的自定义地图,点击,选择编辑图片区域,如下图:
在弹出的对话框中导入准备好的地图图片,如下图:
注:导入支持的图片类型:gif,png,jpg,bmp。
地图图片要求:需要有点选地图上某块区域的效果,那么提供的地图上要需要有清晰的区域边线,并且区域边线的颜色要统一,如全是黑色,区域内模块为纯色,不能包含有其他内容。
双击图片中的每一块区域,将其命名,可以直接选取数据库中的,也可以直接手动书写,命名好之后,点击保存,如下图:
所有区域都添加完成之后,点击确定,回到图表属性面板,再次点击,可编辑自定义地图名称,我们这里将自定义地图命名为泉州市地图。
到此,泉州市地图则定义好了,属性表的地图列表中有了泉州市地图,可以用在任意报表中。
注:自定义地图的数据保存在%FR%\WebReport\WEB-INF\resources\chartmap\map.xml文件中,如果在另外一个设计器或者工程中需要使用该自定义地图,则将该文件复制过去即可。
地图数据
定义好地图之后,需要给地图定义数据源,选中地图,点击图表属性表-数据,我们这里不需要实现地图的钻取,则地图展现方式直接使用默认的单层地图即可,数据设置如下图:
保存之后,地图就做好了,下面制作跟地图联动的折线图。
2.3 折线图
在地图的右侧合并一片单元格,插入折线图,表样式如下:
折线图数据来源
为折线图设置数据来源,数据集为ds2,分类轴为月份,系列名使用字段名,字段名为指数,如下图:
折线图样式设置
为折线图设置动态标题,即当点击泉州市的某个县时,折线图的标题也随着变化,设置如下:
2.4 交互属性设置
地图和折线图都制作好了,由于要实现地图与折线图之间的联动,则需要在图表属性表-特效>交互属性中添加超级链接。
选中地图,在交互属性中添加超级链接图表链接-联动单元格,如下图设置:
2.5 保存与预览
保存模板,点击分页预览,即可看到上面所示的效果
|
|
|

.: 公告
本博客提供详细的java报表软件的制作过程,发布java报表软件的版本更新信息,并适时对国内主流报表软件进行功能比较。 |
|
« | July 2025 | » | 日 | 一 | 二 | 三 | 四 | 五 | 六 | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | | | |
|
.: 我的分类(专题)
|

.: 最新日志
.: 最新回复
|

blog名称:Java报表软件 日志总数:357 评论数量:69 留言数量:0 访问次数:1201728 建立时间:2006年4月16日 |
|

.: 留言板
|

.: 链接
|

|