Chart Image

📊 无头服务器图表生成器 · 零浏览器依赖

data-visualization榜 #1

基于Vega-Lite的无头服务器图表生成器,支持12+图表类型,无需浏览器依赖,冷启动<500ms,专为Fly.io/VPS容器化部署优化

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

使用说明

核心功能

chart-image是一款专为无头服务器环境设计的图表生成工具,基于Vega-Lite规范,可将JSON数据渲染为高质量PNG/SVG图表。核心定位是解决传统Node.js图表方案(如canvasPuppeteer)在容器化部署中的痛点:原生编译依赖、数百MB的浏览器体积、缓慢冷启动。

显著优点

1. 部署友好性:采用Sharp图像库(预编译二进制),零原生编译需求;纯Node.js实现,无Puppeteer/Chrome依赖,镜像体积控制在~15MB vs 400MB+,冷启动<500ms
2. 功能完整性:覆盖line/bar/area/point/histogram/pie/donut/candlestick/heatmap等12+图表类型,支持多系列、堆叠、双Y轴、成交量叠加、sparkline等进阶场景

3. 专业级定制:提供40+CLI参数,涵盖轴域钳位、刻度格式化、暗色主题、社交预设尺寸(Bluesky/Instagram等)、注释标记、动态聚焦(recent N/auto-change)等监控/告警场景专用特性

4. 数据格式灵活:支持JSON数组、管道输入、自定义Vega-Lite spec,兼容ordinal/temporal/quantitative轴类型

潜在局限

  • 静态输出:仅生成图片,无交互功能(tooltip、zoom、pan)
  • Vega-Lite语法门槛:复杂定制需理解底层spec,虽有--spec逃生舱但调试成本存在
  • 字体渲染:依赖系统字体,跨平台一致性需额外配置--font-family
  • 无实时数据流:需预聚合数据,不支持WebSocket直连渲染

适合人群

  • 运维/监控场景:服务器指标告警图、Slack/Discord机器人自动推送
  • 容器化开发者:Fly.io、Railway、AWS Lambda等冷启动敏感环境
  • 报告自动化:CI/CD生成PDF/邮件嵌入图表、社交媒体定时内容
  • 金融/量化用户:OHLC candlestick、volume overlay、双轴对比等专用支持

常规风险

  • 数据注入--data参数接受原始JSON,若来源不可信需前置校验(虽无代码执行风险,但畸形数据可能导致渲染失败)
  • 资源消耗:大批量生成高分辨率图表可能触发内存/CPU峰值,建议设置--width/--height上限
  • 时区敏感--dark自动主题依赖本地时间,跨时区部署需显式控制
  • 文件路径:输出目录权限不足将导致静默失败,建议前置mkdir -p

Chart Image 内容

暂无文件树

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