// npm install echarts canvas const fs = require('fs'); const { createCanvas } = require('canvas'); const echarts = require('echarts'); module.exports = class ChartKit { static printChart(dataList) { // 创建一个 canvas 实例 const width = 1920; // 宽度 const height = 1080; // 高度 const canvas = createCanvas(width, height); // 初始化 ECharts 实例 const chart = echarts.init(canvas); // ECharts 配置项 let option = { title: { text: '散点图' }, xAxis: {}, yAxis: {}, series: [ { symbolSize: 10, data: dataList, type: 'scatter' } ] }; // 设置图表的配置项和数据 chart.setOption(option); // 等待图表渲染完毕 setTimeout(() => { const buffer = canvas.toBuffer('image/png'); fs.writeFileSync('chart.png', buffer); chart.dispose(); // 释放图表实例,防止内存泄漏 console.log('图表已保存为 chart.png'); }, 1000); // 设置一个延时以确保图表渲染完成 } }