我在下载 PNG 图像时遇到问题,我想使用自己的按钮而不是高图表,阅读我需要使用"exportChart"功能的文档,但它删除了数据:
options:any = {
exporting: {
enabled: false
}
}
exportPNG():void{
this.chart.exportChart();
}
有一个"几乎可以工作"的示例,它在app.module中使用"require"给出一个错误,另一个错误是在从导出导入时,帮助使示例工作将得到赞赏
https://stackblitz.com/edit/angular-dqck8n
当它工作时,我们可以单击"下载按钮"并下载图表,但如果再次单击它会返回错误,因为数据已从图表中删除。
我已经意识到使用导出库也会发生这种情况,您可以检查它下载图像文件并尝试缩小。
原因是saveInstance
方法 - 在每个图表的加载时调用它。导出时,会创建一个新的临时图表,然后删除,因此现在您的角度组件具有对已删除的导出图表的引用 -exportPNG()
内部this.chart
引用空图表对象。
您可以检查是否为普通图表调用了加载事件,然后保存图表的实例。
saveInstance(chartInstance): void {
if (!chartInstance.options.chart.forExport) this.chart = chartInstance;
}
现场示例:https://stackblitz.com/edit/angular-41tmjd?file=app/mychart.component.ts