用报表软件自定义地图
以FineReport软件为例 在企业的信息数据中,对于那些业务遍布全国的企业来说,无疑可以直接使用我们的内置中国地图来直观展现,但是对于展示没有内置地图的数据的,比如说通过地图展示县级市数据,我们则可用过自定义地图实现。 将自定义的图片上传至FineReport,在FineReport中定义好图片上对应区域或者对应点的名称,此时上传的图片就被转化成了和FineReport内置的图表具有相同属性的文件,再设置好要展示的图表数据,就可以跟FineReport内置的图表一样,可以数据点提示,可以联动,可以传参,自定义好的地图,会自动保存为当前报表工作目录中的一种地图样式,重复使用。 某公司的业务数据都在泉州市,希望通过泉州地图来实现点击某一个县的时候,同时会出现 ?数据准备 新建2个数据查询,一个用做地图的数据源,一个用做折线图的数据源。 ds1:SQLSELECT avg(指数) as 平均指数,城市 FROM map_泉州数据 group by 城市。 ds2:SQLSELECT * FROM map_泉州数据 where 城市='${city}',参数默认值为安溪县。 ?自定义地图 合并一片单元格,点击菜单栏中的 ,选择地图,点击确定。
由于我们要制作的地图是泉州市地图,但是泉州市地图并不在我们内置地图中,即可使用自定义地图。 选中地图,在右侧上方的属性面板中选择 ,点击选中新建好的自定义地图,点击 在弹出的对话框中导入准备好的地图图片,如下图: 注:用户新上传的地图只支持svg格式的上传,图 片保存在resourceschartmapsvguser-defined目录下。 双击图片中的每一块区域,将其命名,可以直接选取数据库中的,也可以直接手动书写,命名好之后,点击保存,如下图: 所有区域都添加完成之后,点击确定,回到图表属性面板,再次点击 到此,泉州市地图则定义好了,属性表的地图列表中有了泉州市地图,可以用在任意报表中。 注:自定义地图的数据保存在resourceschartmapsvguser-definedresourceschartmapsvguser-defined目录下的svg文件中,如果在另外一个报表工程中需要使用该自定义地图,则将该文件复制过去然后重启报表服务就能生效。
定义好地图之后,需要给地图定义数据源,选中地图,点击 ,我们这里不需要实现地图的钻取,则 直接使用默认的 即可,数据设置如下图:保存之后,地图就做好了,下面制作跟地图联动的折线图。 ?折线图 在地图的右侧合并一片单元格,插入折线图,表样式如下:
为折线图设置数据来源,数据集为ds2,分类轴为月份,系列名使用字段名,字段名为指数,如下图:
为折线图设置动态标题,即当点击泉州市的某个县时,折线图的标题也随着变化,设置如下: ?交互属性设置 地图和折线图都制作好了,由于要实现地图与折线图之间的联动,则需要在 添加超级链接。选中地图,在交互属性中添加超级链接 ,如下图设置:?保存与预览 保存模板,点击分页预览,即可看到上面所示的效果,模板效果在线查看请点击 已完成模板可参见:%FR%WebReportWEB-INFreportletsdocAdvancedChartMap_relate.cpt。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |