Javascript Highcharts导出带有预选数据的SVG
我正在尝试将Highcharts sankey图导出到SVG,我希望有几个不同的矢量文件,其中突出显示了图的不同部分(单击),以便在预先录制的演示文稿中在它们之间淡入淡出。我想不出任何方法让导出模块导出一个通过单击高亮显示的SVG——它只导出“普通”图形。有人能帮忙吗 我附上了我想要的截图,因为我不知道如何将它们导出为矢量文件。无论发生什么情况,数据总是像第一个图表一样导出: 但我也希望将其导出为以下两个图表,其中包含所选数据的各个部分:Javascript Highcharts导出带有预选数据的SVG,javascript,svg,charts,highcharts,vector-graphics,Javascript,Svg,Charts,Highcharts,Vector Graphics,我正在尝试将Highcharts sankey图导出到SVG,我希望有几个不同的矢量文件,其中突出显示了图的不同部分(单击),以便在预先录制的演示文稿中在它们之间淡入淡出。我想不出任何方法让导出模块导出一个通过单击高亮显示的SVG——它只导出“普通”图形。有人能帮忙吗 我附上了我想要的截图,因为我不知道如何将它们导出为矢量文件。无论发生什么情况,数据总是像第一个图表一样导出: 但我也希望将其导出为以下两个图表,其中包含所选数据的各个部分: 以下是我的想法,如何使用导出.menuItemDefi
以下是我的想法,如何使用导出.menuItemDefinition功能来实现它
- 为每个节点创建全局标志,如
customSVGExport1
- 创建自定义导出菜单按钮,该按钮具有将标志更改为true并触发SVG下载(以及再次进行图表渲染)的功能
- 将触发以下功能:
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; } } } },
- 将触发以下功能:
API:太棒了!非常感谢你!
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;
}
}
}
},