chart-kit.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. // npm install echarts canvas
  2. const fs = require('fs');
  3. const { createCanvas } = require('canvas');
  4. const echarts = require('echarts');
  5. module.exports = class ChartKit {
  6. static printChart(dataList) {
  7. // 创建一个 canvas 实例
  8. const width = 1920; // 宽度
  9. const height = 1080; // 高度
  10. const canvas = createCanvas(width, height);
  11. // 初始化 ECharts 实例
  12. const chart = echarts.init(canvas);
  13. // ECharts 配置项
  14. let option = {
  15. title: {
  16. text: '散点图'
  17. },
  18. xAxis: {},
  19. yAxis: {},
  20. series: [
  21. {
  22. symbolSize: 10,
  23. data: dataList,
  24. type: 'scatter'
  25. }
  26. ]
  27. };
  28. // 设置图表的配置项和数据
  29. chart.setOption(option);
  30. // 等待图表渲染完毕
  31. setTimeout(() => {
  32. const buffer = canvas.toBuffer('image/png');
  33. fs.writeFileSync('chart.png', buffer);
  34. chart.dispose(); // 释放图表实例,防止内存泄漏
  35. console.log('图表已保存为 chart.png');
  36. }, 1000); // 设置一个延时以确保图表渲染完成
  37. }
  38. }