Chart Image

📊 零浏览器依赖的专业图表生成器

零依赖图表生成器,无需浏览器/Puppeteer,15MB轻量部署,专为Fly.io/VPS设计,500ms内生成专业PNG图表。

收藏
45.2k
安装
9.7k
版本
2.6.23
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

chart-image 是一款基于 Vega-Lite 的纯 Node.js 图表生成工具,通过命令行调用将 JSON 数据转换为 PNG/SVG 图像。支持 10+ 种图表类型:折线图、柱状图、面积图、散点图、饼图/环形图、K线图、热力图、多系列对比、堆叠图及双轴组合图。

典型工作流:准备 JSON 数据数组 → 选择图表类型与字段映射 → 调用 chart.mjs 脚本 → 输出 PNG 文件 → 通过消息工具发送至用户频道。支持管道输入、自定义 Vega-Lite 规格、社交尺寸预设(Twitter/X、Bluesky、Instagram 等)及暗黑模式自动切换。

显著优点

部署友好性业界领先

  • 零原生编译:采用 Sharp 预编译二进制,告别 canvas 的 Python/build-essential 噩梦
  • 零浏览器依赖:纯 Node.js 实现,无 Puppeteer/Chrome 400MB+ 负担,冷启动 <500ms
  • 离线可用:不调用 QuickChart.io 等外部 API,数据不出境

功能完整性

  • 金融级 K线图 + 成交量叠加、双轴独立缩放、时间序列智能解析、Sparkline 微图
  • 20+ 格式化选项(货币、百分比、紧凑数字)、动态注解与事件标记、社交适配尺寸
  • 字体/色彩/图例深度自定义,满足品牌一致性需求

潜在局限

  • 格式依赖:仅输出 PNG/SVG,无交互式 HTML/JS 图表能力
  • 数据规模:Vega-Lite 客户端渲染,超大数据集(10万+点)可能内存承压
  • 学习曲线:字段映射、D3 时间格式、Vega 配色方案需一定可视化知识
  • 无实时更新:静态图片输出,需重新生成实现"刷新"

适合人群

  • DevOps/SRE:需要嵌入监控告警的轻量图表(配合 --show-change --focus-change 告警样式)
  • 量化/金融开发者:K线+成交量、多时间轴、价格格式化开箱即用
  • 社交运营:一键生成 Bluesky/Instagram 适配尺寸的传播图表
  • Serverless 部署者:Fly.io、Docker、VPS 场景下追求最小镜像体积

常规风险

| 风险项 | 说明 | 缓解措施 |
|--------|------|---------|
| 输入注入 | `--data` 接收 JSON 字符串,畸形数据可能导致异常 | 严格校验输入为合法 JSON 数组 |
| 文件覆盖 | `--output` 路径若指向敏感文件可能意外覆盖 | 限定输出目录为 `/data/clawd/tmp/` 等隔离路径 |
| 资源耗尽 | 极大数据集或高并发请求可能耗尽内存 | 限制单请求数据点数量,启用流式处理 |
| 时区混淆 | 时间序列默认按以色列时间判断暗黑模式 | 明确指定 `--dark` 或校验业务时区需求 |

版本状态

当前 v2.6.22(2026-03-27),活跃维护,近期新增 --y2-ticks 双轴刻度控制。

Chart Image 内容

暂无文件树

手动下载zip · 38.5 kB
contentapplication/octet-stream
请选择文件