最新历史版本 :图表根据分类数量调整宽度 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 问题描述

图表的分类数量越多,图表越宽,效果如下图所示:

图表大小.gif

1.2 实现思路

利用单元格扩展属性实现图表宽度动态变化效果。

2. 示例编辑

2.1 设计模板

1)创建数据集查询 ds1,SQL 查询语句如下:

SELECT * FROM 销量 where 1=1

${if(len(销售员)=0,""," and 销售员 in ('"+销售员+"')")}

image.png

2)选中 B1单元格,填入公式 range(if(len($销售员) = 0, 9, len(split($销售员, "','")))) ,并设置横向扩展,然后将第一行隐藏。

公式解析:当销售员参数为空时,设置一个固定扩展数量 9,当参数不为空时,根据参数的数量来扩展。

image.png

3)合并 A2 至 B11 单元格,插入一个柱形图,将图表的上父格设置为无,如下图所示:

image.png

4)参数面板添加一个销售员参数对应的下拉复选框控件,返回值类型为字符串,分隔符为',',数据字典设置如下图所示:

image.png

2.2 效果预览

保存报表,点击分页预览,选择不同数量的分类,图表宽度随之改变,效果如下图所示:

图表大小.gif

注:不支持移动端,移动端图表宽度是固定的。


3. 模板下载编辑

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Chart\图表根据分类数量调整宽度.cpt

点击下载模板:图表根据分类数量调整宽度.cpt