【发布时间】:2020-08-02 02:14:33
【问题描述】:
我正在尝试将 Highcharts sankey 图导出到 SVG,并且我希望有几个不同的矢量文件,图中突出显示的不同部分(单击),所以我可以在它们之间以预先录制的方式淡入淡出介绍。我想不出任何方法可以让 Export 模块导出一个通过单击突出显示的 SVG——它只导出“普通”图形。有人可以帮忙吗?
【问题讨论】:
标签: javascript svg charts highcharts vector-graphics
我正在尝试将 Highcharts sankey 图导出到 SVG,并且我希望有几个不同的矢量文件,图中突出显示的不同部分(单击),所以我可以在它们之间以预先录制的方式淡入淡出介绍。我想不出任何方法可以让 Export 模块导出一个通过单击突出显示的 SVG——它只导出“普通”图形。有人可以帮忙吗?
【问题讨论】:
标签: javascript svg charts highcharts vector-graphics
这是我的想法,如何使用 exporting.menuItemDefinition 功能来实现它。
customSVGExport1,创建具有将标志更改为 true 并触发 SVG 下载(并再次呈现图表)的功能的自定义导出菜单按钮,
onclick: function() {
customSVGExport1 = true;
this.exportChart({
type: 'image/svg+xml'
});
},
下面的函数会被触发:
chart: {
events: {
render() {
let chart = this;
if (customSVGExport1) {
// Trigger point hover event
chart.series[0].nodes[0].onMouseOver();
// Hide tooltip for export
chart.tooltip.label.hide();
// Set flag back to false;
customSVGExport = false;
} else if (customSVGExport2) {
chart.series[0].nodes[1].onMouseOver();
chart.tooltip.label.hide();
customSVGExport = false;
}
}
}
},
演示:https://jsfiddle.net/BlackLabel/x67jwsmo/
API:https://api.highcharts.com/highcharts/exporting.menuItemDefinitions
API:https://api.highcharts.com/highcharts/chart.events.render
【讨论】: