从导出到csv中排除特定系列

问题描述 投票:0回答:1

我正在使用HighCharts库在仪表图中绘制一些数据。我的图表如下图所示。

enter image description here

为了实现这个图,我使用系列选项一起使用实心规和量规(半圆形的实心规和表盘的规格。)

...
series: [
  {
    name: 'solidgauge',
    type: 'solidgauge',
    data: [data.value],
    ...
  },
  {
    name: 'gauge',
    type: 'gauge',
    data: [data.value],
    ...
  },
]
...

显然这两个系列的数据是相同的,所以当我将图表导出到csv文件时,库会创建两个具有相同数据的列,我想要更改此行为并只导出一个系列,但经过大量搜索,我无法在highcharts中找不到任何选项以排除特定系列。

enter image description here

我怎样才能做到这一点? (我不熟悉导出自定义,使用少量代码示例的答案对于开始创建我自己的代码非常有用。)

csv highcharts export-to-csv react-highcharts
1个回答
0
投票

您可以包装getCSV方法并在继续之前隐藏系列:

var H = Highcharts;

H.wrap(H.Chart.prototype, 'getCSV', function(proceed) {
    var result;

    this.series[1].hide();
    result = proceed.apply(this, Array.prototype.slice.call(arguments, 1));
    this.series[1].show();

    return result;
});

现场演示:https://jsfiddle.net/BlackLabel/109a7vek/

此外,您可以在exportData事件中编辑生成的数据:

H.addEvent(H.Chart, 'exportData', function(e){
  e.dataRows.forEach(function(el){
    el.splice(2, 1);
  });
});

现场演示:https://jsfiddle.net/BlackLabel/du7nz2hy/

文件:https://www.highcharts.com/docs/extending-highcharts

© www.soinside.com 2019 - 2024. All rights reserved.