3

我在 kendo-ui 的 v2013.2.726 中使用堆叠条形图。我想根据图表图例中启用的项目进行总计计算。到目前为止,我还没有找到一种一致的方法来判断启用了哪些图例项。

我尝试了以下方法,但它不起作用,因为 kendoChart._sourceSeries[i].visible 在多次单击图例项后与视觉状态不一致。

function onLegendItemClick(clickEventArgs) {
    var total = 0;
    for (var i = 0; i < self.kendoChart._sourceSeries.length; ++i) {
        if ((clickEventArgs.text === self.kendoChart._sourceSeries[i].name &&
            !self.kendoChart._sourceSeries[i].visible) ||
            (clickEventArgs.text !== self.kendoChart._sourceSeries[i].name &&
            self.kendoChart._sourceSeries[i].visible)) {
            total += chartModel.Series[i].Total; 
        }
    }
    ...
};

那么是否甚至可以确定启用了哪些图例项?

4

2 回答 2

5

所以我开始考虑实现一些东西来跟踪剑道之外的项目状态。直到那时我才注意到属性 kendoChart.options.series[i].visible 确实表明了状态。

我很抱歉回答我自己的问题,但没有太多流量或我在 kendo-ui 论坛上发布的问题。所以我想我应该分享我的发现。

于 2013-10-29T15:26:27.510 回答
0

我假设您可以遍历剑道图表中显示的可见(活动)元素,然后显示该总计。

您可以通过dataSource.view()方法直接获取它们,而不是搜索哪些项目是活动的。

于 2013-10-29T16:41:48.183 回答