Highcharts 从导出到 CSV 中删除键定义的列
Highcharts remove column defined by keys from export to CSV
我正在使用 series.keys
控制数据集中每个点的 marker.enabled
- 类似于 keys: ['x','y','marker.enabled']
并且数据看起来像 [[1609459200,10,false], [1609459200,20,true]...]
问题是 - 导出到 CSV 时 - 我现在不是只将 Y 数据作为列,而是将所有 3 个键作为列 - title(x), title(y), title(marker.enabled)
我知道我可以将 data
从数组数组更改为对象数组,摆脱 keys
并实现相同的目的 - 但我仍然想知道是否有保留的选项keys 但只导出 Y,就好像 keys 是 undefined
我尝试在 exporting.chartOptions
中将 keys
覆盖为未定义,但它似乎不影响 CSV。
有什么简单的方法吗?
谢谢。
编辑:
带有示例的 jsfiddle https://jsfiddle.net/3f4a1xdo/
虽然它并没有真正导出 - table 显示了导出为 CSV 时的样子。请注意 keys
如何导致 table 包含 Temperature(x)
,它是 Day
和 Temperature(Y)
的副本。如果您注释掉 keys
行,table 会很好地显示而无需触及实际数据。
根据评论-这个问题有一个最终解决方案:
要删除一列:
H.addEvent(H.Chart, 'exportData', function(e) {
e.dataRows.forEach(function(el) {
el.splice(1, 1);
});
});
要编辑 table headers:
csv: {
columnHeaderFormatter: function(item, key) {
if (item.isXAxis) {
return 'Category'
} else {
return item.name
}
}
}
演示:https://jsfiddle.net/BlackLabel/5zthymxg/
API: https://api.highcharts.com/highcharts/exporting.csv.columnHeaderFormatter
我正在使用 series.keys
控制数据集中每个点的 marker.enabled
- 类似于 keys: ['x','y','marker.enabled']
并且数据看起来像 [[1609459200,10,false], [1609459200,20,true]...]
问题是 - 导出到 CSV 时 - 我现在不是只将 Y 数据作为列,而是将所有 3 个键作为列 - title(x), title(y), title(marker.enabled)
我知道我可以将 data
从数组数组更改为对象数组,摆脱 keys
并实现相同的目的 - 但我仍然想知道是否有保留的选项keys 但只导出 Y,就好像 keys 是 undefined
我尝试在 exporting.chartOptions
中将 keys
覆盖为未定义,但它似乎不影响 CSV。
有什么简单的方法吗? 谢谢。
编辑:
带有示例的 jsfiddle https://jsfiddle.net/3f4a1xdo/
虽然它并没有真正导出 - table 显示了导出为 CSV 时的样子。请注意 keys
如何导致 table 包含 Temperature(x)
,它是 Day
和 Temperature(Y)
的副本。如果您注释掉 keys
行,table 会很好地显示而无需触及实际数据。
根据评论-这个问题有一个最终解决方案:
要删除一列:
H.addEvent(H.Chart, 'exportData', function(e) {
e.dataRows.forEach(function(el) {
el.splice(1, 1);
});
});
要编辑 table headers:
csv: {
columnHeaderFormatter: function(item, key) {
if (item.isXAxis) {
return 'Category'
} else {
return item.name
}
}
}
演示:https://jsfiddle.net/BlackLabel/5zthymxg/
API: https://api.highcharts.com/highcharts/exporting.csv.columnHeaderFormatter