| 
  
 
|  [Java报表软件—技术知识]图表联动——三个图表的联动 |  
| 1. 问题描述
  如何实现点击图表1,图表2显示图表1的关联数据,接着点击图表2,图表3显示图表2的关联数据又该如何实现呢,如下图,下面详细介绍该功能的实现步骤。
  
2. 示例
2.1 数据准备
  新建3个数据集作为3张图表的数据源。
  ds1:SELECT * FROM [销量] where 1=1 ${if(len(地区)==0,"","and 地区='"+地区+"'")}
  ds2:SELECT * FROM [销量] where 1=1 ${if(len(地区)==0,"","and 地区='"+地区+"'")} ${if(len(销售员)==0,"","and 销售员='"+销售员+"'")}
  ds3:SELECT * FROM [销量] where 1=1 ${if(len(地区)==0,"","and 地区='"+地区+"'")} ${if(len(销售员)==0,"","and 销售员='"+销售员+"'")} ${if(len(产品类型)==0,"","and 产品类型='"+产品类型+"'")}
2.2 图表设置
数据源设置
  新建3张图表,柱形图、饼图、折线图,其数据源分别为ds1,ds2和ds3,具体数据源设置如下图:
  
交互属性设置
  点击柱形图时,需要将柱形图的分类轴传递给饼图,作为饼图数据源和折线图数据源的一个参数值,点击饼图时,需要将饼图的系列名传递给折线图作为折线图数据源的参数值,如果类似图表联动中的是两个图表之间的相互关联,则直接使用超级链接-联动单元格,但是此处折线图需要接收来自柱形图的分类轴值,而折线图却不是和柱形图联动,所以无法直接使用超级链接-联动单元格,我们可以使用超级链接中的动态参数,点击柱形图或饼图的时候,动态的给参数赋值,并且参数值一直存在,设置如下图:
  柱形图
  
  饼图
  
参数界面设置
  如最上面的效果图,切换到参数设计界面,点击右侧下方面板的全部添加,将参数全部添加到参数面板中,如下图:
  
  地区参数的控件类型选择下拉框,数据字典设置如下图:
  
  将销售员和产品类型的控件以及标签设置为不可见,将销售员和产品类型两个参数的控件添加上去主要是为了在预览一次报表之后,重新选择地区时,可以重置销售员和产品类型两个参数。
2.3 效果查看
  点击分页预览,效果如上图。
 
 |  
|  |    
 
 
 
 
 
 
 | 
 
|  .: 公告 
 
| 
 本博客提供详细的java报表软件的制作过程,发布java报表软件的版本更新信息,并适时对国内主流报表软件进行功能比较。 |  |  
 
|  
 
| | « | October 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
 访问次数:1228338
 建立时间:2006年4月16日
 |  
 |  
 
|  
 .: 留言板  |  
 
|  
 
 .: 链接  |  
  
 
 |