Chart Image

📊 零浏览器图表生成,云原生首选

数据可视化榜 #1

Server-native chart generation without browsers, perfect for Fly.io/VPS deployments. Generates publication-quality PNG/SVG charts from JSON data using Vega-Lite and Sharp—no Puppeteer, no native compilation, <500ms cold starts.

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

使用说明

核心功能

Chart Image Generator 是一款专为无头服务器环境设计的图表生成工具,基于 Vega-Lite 和 Sharp 图像处理库,可将 JSON 数据转换为出版级 PNG/SVG 图表。核心价值在于彻底摆脱浏览器依赖:无需 Puppeteer、无需下载 Chrome、无需原生编译工具链。

显著优点

| 维度 | 传统方案 (Puppeteer/Canvas) | 本方案 |
|------|---------------------------|--------|
| 依赖体积 | 400MB+ | ~15MB |
| 冷启动时间 | 2-10秒 | <500ms |
| 部署复杂度 | 需 apt-get 安装系统库 | `npm install` 即可 |
| 离线能力 | 依赖外部 API (QuickChart) | 完全本地执行 |
| 云原生友好 | 需特殊 Docker 配置 | Fly.io/VPS 开箱即用 |

支持的图表类型:线图、柱状图、面积图、散点图、饼图/环形图、K线蜡烛图、热力图、多序列对比、堆叠柱状图、成交量叠加、迷你 Sparkline。

专业功能:时间序列轴(自动处理日期间隙)、Y 轴格式化(货币/百分比/紧凑数字)、水平参考线、时间轴事件标注、暗黑模式自动切换、聚焦最近 N 个数据点、涨跌幅标注。

潜在局限

1. 静态输出:仅生成图片,不支持交互式图表(tooltip、缩放需前端实现)
2. Vega-Lite 边界:复杂自定义可视化需手写 Vega-Lite spec,学习曲线存在

3. 无实时刷新:需重新执行命令生成新图,非流式更新

4. 字体限制:依赖系统字体,特殊字体需自行配置

适合人群

  • DevOps/SRE:服务器监控告警图表、基础设施指标可视化
  • 量化/金融开发者:K线图、价格走势、成交量分析(支持 OHLC 数据)
  • 数据工程师:自动化报告生成、定时任务输出图表
  • Bot/自动化开发者:Discord/Telegram 机器人嵌入图表、告警消息配图

使用风险

  • :纯 Node.js 实现,无网络对外请求,无代码执行漏洞
  • 数据隐私:数据全程本地处理,不上传第三方服务
  • 依赖稳定性:Sharp 预编译二进制在少数架构(如 Alpine musl)可能需要额外配置

最佳实践

# 告警风格:聚焦变化 + 暗黑模式 + 关键值标注
node chart.mjs --type line --data '[...]' \
  --title "指标监控" --show-change --focus-change --show-values --dark \
  --output alert.png

# 生成后务必通过消息工具发送图片(非 thread-reply)
# action=send, filePath=/data/clawd/tmp/chart.png

Chart Image 内容

暂无文件树

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