统计图宽度根据内容伸缩实例

需求背景

最近常有客户提出,统计图宽度一旦设定就无法改变了,而由于数据的变化,统计项或多或少,这就要求统计图的宽度能随着数据量的增大而变宽、减小而变窄,以使图形显示更加美观。

需求分析

我们的统计图是基于单元格设定的,即若该单元格不扩展,其宽度即为单元格宽度。所以我们应该将其放到根据数据量扩展的扩展格中,已实现统计图宽度随内容变化的效果。

实现步骤

首先我们做一张带有参数模板的报表,如下图:

带有下拉列表框的参数模板

带有统计图的报表

其中, A1 单元格表达式: =list(@arg1) ,接收参数模板传过来的值,并在报表中显示;

B1 表达式: =int(A1*rand()*10) ,生成一个 1 100 间的随机数,用于统计值显示;

C2 表达式: =to(1,count(A1{})) ,计算参数模板传过来的参数元素个数,用于统计图长度的伸缩。

设置一二行为隐藏行。

我们在页面上预览一下效果:

选择两条数据时


选择十条数据时

本文只是通过一个简单的例子来说明,报表中一些看似已经固定的东西,我们可以通过一些变通的方法、方式找到合理的途径解决问题。在遇到实际复杂的需求时,可以参考类似的方法实现。

本文标签: 报表软件