我在网上找到了这些很棒的数据透视表组件
我的问题(或疑问)在于数据透视表固有地围绕数字数据集“透视”数据。这意味着单元格交叉点通常只能是数字性质(SUM/COUNT/FIRST ...)
是否有任何东西(或者,如果您知道如何修改当前组件)将在枢轴“值”或交集内显示非数字数据。
我的问题如下图所示。
可以看出,交互数据实际上是每个角色可以访问的报告(按报告类别分组)......我知道还有其他方法可以表示这些数据,但是我真的很喜欢上面的透视查看器的方式交换数据过滤器(列)
提前致谢。
我在网上找到了这些很棒的数据透视表组件
我的问题(或疑问)在于数据透视表固有地围绕数字数据集“透视”数据。这意味着单元格交叉点通常只能是数字性质(SUM/COUNT/FIRST ...)
是否有任何东西(或者,如果您知道如何修改当前组件)将在枢轴“值”或交集内显示非数字数据。
我的问题如下图所示。
可以看出,交互数据实际上是每个角色可以访问的报告(按报告类别分组)......我知道还有其他方法可以表示这些数据,但是我真的很喜欢上面的透视查看器的方式交换数据过滤器(列)
提前致谢。
我不能代表所有不同的数据透视表实现,有些可能有一个内置的“聚合器”,它允许你将字符串值与格式连接起来(例如添加一个 cr/lf),但快速浏览一下在 nicolaskruchten/pivottable 源中,我认为您可以轻松添加自己的聚合器。
只需查看文件 pivot.coffee,从第 22 行开始。您会看到不同的聚合器模板,因此您可以在那里添加自己的模板。
编辑
我只是查看了 rjackson/pivot.js 实现,从它的外观上看,如果您在 pivot.js 586+ 行添加自己的 defaultSummarizeFunction,然后将其添加到第 651+ 行的选择中,您可以创建您的自己的“concat” SummarizeFunction
编辑 2
好吧,事实证明比我想象的还要容易。使用 rjackson/pivot.js 之一,您所要做的就是在定义可连接字段时提供自己的 summariseFunction:
{name: 'billed_amount', type: 'string', rowLabelable: false, summarizable: 'string', summarizeFunction: function(rows, field){
var result = '',
i = -1;
m = rows.length;
while (++i < m) {
result = result + rows[i][field.dataSource] + '<br>';
}
return result;
}}
在此示例中,我将一个通常会被求和的字段转换为一个连接字段,只需提供我自己的 summariseFunction。
看一个例子:http: //mrlucmorin.github.io/pivot.js/
干杯