0

我想从图例中隐藏一个系列名称,我该怎么做?

Ext.each(chart.series.items, function(series) {
            if (series.yField = 'done') {
                alert('found done');
                // hides the series
                series.hideAll();

                series.showInLegend = false; // STILL SHOWS
                return false;
            }
        });

任何帮助表示赞赏。

4

2 回答 2

1

在 Ext js 6.2 中,系列中有“showInLegend”选项。:)

于 2018-07-09T16:47:07.423 回答
0

您可以采取一种解决方法来专门针对某些图例条目,例如,如果您为图例指定模板:

legend: {
    itemTpl: [
        '<tpl if="value != seriesToHide">', // <= template condition
            '<span class="{[values.disabled?\'x-legend-inactive\':\'\']}" style="background:{mark};"></span>{name}',
        '</tpl>'
    ]
}

您可以使用模板条件根据传递的值显示/隐藏某些条目(如果这不起作用,请将值替换为名称)。

或者,您也可以为模板分配一个类,例如x-legend-series-{name},在您的 CSS 文件中,为您希望隐藏的那些系列创建遵循该模式的类,例如

.x-legend-series-seriesToHide{
  display:none;
}

例如

legend: {
    itemTpl: [
        '<tpl>',
           '<span class="x-legend-series-{name}">',
              '<span class="{[values.disabled?\'x-legend-inactive\':\'\']}" style="background:{mark};"></span>{name}',
           '</span>'
        '</tpl>'
    ]
}
于 2013-10-30T13:45:29.613 回答