在自动化报表、邮件推送、数据归档等场景中,前端图表"批量导出"为图片是一项刚需能力。
相比浏览器导出,Highcharts 提供了一种更强大的方式:通过 Node 导出服务器,在命令行中生成图表图片(PNG / PDF / SVG)
这不仅适用于开发环境,也非常适合集成到 CI/CD 或数据处理流程中。
什么是 Node 导出服务器?
Highcharts 的 Node 导出服务器(node export server)是一个:既可以作为服务运行,也可以作为命令行工具使用的图表渲染引擎
它能做什么?
- 根据图表配置(JSON)生成图片
- 根据 SVG 转换图片格式
- 批量生成图表文件
- 自动化生成报表图表
把浏览器里的图表渲染能力,搬到命令行里执行
适用场景(非常关键)
✅ 推荐使用
- 自动生成日报 / 周报
- 后端生成图表图片(邮件/接口返回)
- 批量转换图表
- 保证前后端图表一致
❌ 不适合
- 纯前端交互场景
- 实时用户操作导出
安装方式(非常简单)
使用 npm 全局安装:
npm install -g highcharts-export-server
命令行基本用法
核心命令:
highcharts-export-server <arguments>
示例:
-
将图表配置转换为PNG图片: `highcharts-export-server -infile chartConfig.json -outfile chart.png`
-
批量将三个图表转换为图片:`highcharts-export-server -batch "infile1.json=outfile1.png;infile2.json=outfile2.png;infile3.json=outfile3.png;"`
有关更多信息,请参阅 [GitHub](https://github.com/highcharts/node-export-server/blob/master/README.md) 的文档。
旧版导出服务器的使用说明可以在 这里找到 [here](https://highcharts.com/docs/export-module/legacy-export-servers).
一句话结论: Highcharts Node 导出服务器,是实现"图表自动化生产"的核心工具
最后一句(实战建议)
很多团队在做报表系统时:手动截图 or 前端导出
其实更优解是: 直接用命令行批量生成,接入自动化流程