2

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

在此处输入图像描述

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

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

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

在此处输入图像描述

我怎样才能做到这一点?(我不熟悉导出自定义,用很少的代码示例回答将非常适合开始创建我自己的。)

4

1 回答 1

1

您可以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/extending-highcharts

于 2019-03-12T07:47:04.017 回答