图表生成器(免费版)
一个面向命令行场景的轻量级数据可视化工具,通过单一脚本即可生成十余种图表形态。无需安装Python科学计算栈或前端图表库,开箱即用。
概述
本工具通过(请参考skill目录中的脚本文件)脚本接收用户输入的数据,输出可在终端直接显示的ASCII图表,或可保存为文件供后续分享的HTML/SVG格式。设计目标:
- 零依赖:仅依赖Bash环境,不安装任何第三方运行时
- 双输出:终端ASCII图表方便命令行查看,HTML文件方便分享嵌入
- 多形态:覆盖柱状、折线、饼图、表格、迷你趋势、热力图、进度条、SVG矢量等十余种类型
- 即开即用:一条命令直接出图,无需配置文件、无需初始化
核心能力
| 能力 | 描述 | 输出形态 |
|---|---|---|
| 基础柱状图 | 标签+数值的横向柱状对比 | ASCII终端 |
| 折线趋势图 | 纯数值序列的走势可视化 | ASCII终端 |
| 饼图占比 | 标签+数值的份额可视化 | ASCII终端 |
| 表格渲染 | 管道符分隔的多列表格 | ASCII终端 |
| HTML柱状图 | 浏览器可打开的交互页面 | HTML文件 |
| 迷你趋势图 | Unicode sparkline一行展示 | ASCII终端 |
| 仪表盘骨架 | 多图表组合的HTML模板 | HTML文件 |
| 进度条 | 已完成/总数的可视化 | ASCII终端 |
| 月度趋势 | 带时间维度的折线图 | ASCII终端 |
| 热力图 | 矩阵数据的颜色映射 | ASCII终端 |
| SVG柱状图 | 矢量图形,支持主题色 | SVG文件 |
| SVG饼图 | 矢量饼图,可缩放不失真 | SVG文件 |
| SVG折线图 | 矢量折线,适合报告嵌入 | SVG文件 |
核心功能执行
用input_params参数进行配置。
输入: 用户提供核心功能执行所需的指令和必要参数。 处理: 解析核心功能执行的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回核心功能执行的响应数据,包含状态码、结果和日志。
- 执行此能力时使用
input_params参数,支持创建/查询/导出操作
参数配置与调用
用config_options参数进行配置。
输入: 用户提供参数配置与调用所需的指令和必要参数。 处理: 解析参数配置与调用的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回参数配置与调用的响应数据,包含状态码、结果和日志。
- 执行此能力时使用
config_options参数,支持修改/重置/导入操作
结果处理与输出
用output_format参数进行配置。
输入: 用户提供结果处理与输出所需的指令和必要参数。 处理: 解析结果处理与输出的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回结果处理与输出的响应数据,包含状态码、结果和日志。
- 执行此能力时使用
output_format参数,支持导出/保存/转换操作 能力覆盖范围:本skill的核心能力覆盖以下场景关键词:一条命令生成、覆盖柱状、热力图等十余种类、开箱即用、一条命令即可生成、终端可视化图表的、轻量工具、矢量图与、交互页面等多种形、核心能力等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。
使用场景
场景1:日报中展示部门预算对比
运维同学需要在每日站会前快速对比四个部门的预算消耗,使用终端柱状图即可在不打开浏览器的情况下完成展示:
chart.sh bar "销售:85,市场:62,研发:93,运维:41" --title "部门预算(万)"
场景2:监控数据的迷你趋势图
将过去8小时的CPU负载序列压缩为一行sparkline,嵌入到监控脚本输出中:
chart.sh sparkline "3,7,2,8,5,9,1,6"
输出:▃▆▁█▄█▁▅,一眼即可看出峰值在第4个采样点。
场景3:周报中嵌入SVG折线图
将本月每日活跃用户数据生成SVG文件,嵌入到周报文档中:
chart.sh svg-line "月度活跃" "1日:1200,8日:1850,15日:2120,22日:2480,29日:2630"
场景4:快速对比三组数据的占比
季度市场份额对比,使用饼图直观呈现:
chart.sh pie "苹果:35,三星:25,华为:20,其他:20" --title "Q3市场份额"
使用流程
Step 1:定位脚本
脚本位于skill目录下的(请参考skill目录中的脚本文件),无需额外安装。
Step 2:第一条命令
chart.sh bar "A:30,B:50,C:20" --title "示例"
预期输出:
示例
A ██████████░░░░░░░░░░ 30
B █████████████████░░░ 50
C ██████░░░░░░░░░░░░░░ 20
Step 3:查看完整命令列表
chart.sh help
命令一览
chart.sh bar "标签1:值1,标签2:值2,标签3:值3" [--title "标题"]
chart.sh line "1,5,3,8,2,7" [--title "趋势"]
chart.sh pie "A:30,B:50,C:20" [--title "分布"]
chart.sh table "H1,H2,H3|R1C1,R1C2,R1C3|R2C1,R2C2,R2C3"
chart.sh html-bar "A:30,B:50,C:20" --output chart.html
chart.sh sparkline "1,5,3,8,2,7,4,9"
chart.sh dashboard "标题"
chart.sh progress "已完成,总数" [--title "项目进度"]
chart.sh trend "10,15,12,20,18,25" [--title "月度增长"]
chart.sh heatmap "1,2,3|4,5,6|7,8,9" [--title "活跃度"]
chart.sh svg-bar "销售报告" "Q1:120,Q2:180,Q3:95,Q4:210" [--color blue|green|red|rainbow]
chart.sh svg-pie "市场份额" "苹果:35,三星:25,华为:20"
chart.sh svg-line "月度趋势" "1月:100,2月:150,3月:120"
chart.sh help
数据格式说明
| 类型 | 格式 | 适用命令 |
|---|---|---|
| 键值对 | "标签:数值,标签:数值" | bar、pie、html-bar |
| 纯数值 | "1,5,3,8,2,7" | line、sparkline |
| 表格 | "列头1,列头2|行1值1,行1值2|行2值1,行2值2" | table(管道符分隔行,逗号分隔列) |
| 矩阵 | "1,2,3|4,5,6|7,8,9" | heatmap |
示例
选项参数
--title "标题":设置图表标题(适用于bar、line、pie)--output file.html:指定HTML输出文件路径(适用于html-bar)--color blue|green|red|rainbow:SVG图表的主题色(适用于svg-bar)
输出示例:柱状图
$ chart.sh bar "销售:85,市场:62,研发:93,运维:41" --title "部门预算(万)"
# ...
部门预算(万)
销售 ████████████████████░ 85
市场 ███████████████░░░░░░ 62
研发 ██████████████████████ 93
运维 ██████████░░░░░░░░░░░ 41
输出示例:迷你趋势图
$ chart.sh sparkline "3,7,2,8,5,9,1,6"
▃▆▁█▄█▁▅
最佳实践
- 标签长度统一:保持柱状图标签字符数一致,对齐效果更好
- 数值范围归一:超过100的数值会自动按比例缩放,建议在标题中标注单位
- sparkline采样点控制:8-12个采样点视觉效果最佳,过多会拥挤
- SVG输出路径用绝对路径:在自动化脚本中调用时,使用绝对路径避免相对路径歧义
- 表格数据校验:使用管道符分隔行时,确保每行列数一致
- 饼图数值总和:饼图数值会自动归一化,但建议直接输入百分比便于校对
常见问题
Q1:执行脚本报"command not found"?
A:脚本路径未在PATH中,请使用绝对路径或相对路径调用,例如(请参考skill目录中的脚本文件) bar ...。
Q2:中文标签显示错位?
A:终端字体未启用等宽显示,建议使用等宽字体如"DejaVu Sans Mono"或"Source Code Pro"。
Q3:HTML文件打开后样式错乱?
A:浏览器缓存了旧版本,强制刷新(Ctrl+Shift+R)即可。
Q4:能否在Windows的PowerShell中直接运行?
A:需要安装Git Bash或WSL环境,原生PowerShell不支持bash脚本语法。
Q5:如何把多张图表合并到一个HTML文件?
A:使用chart.sh dashboard "标题"生成仪表盘骨架,再分别生成子图表插入。
依赖说明
运行环境
- Agent平台:支持SKILL.md的任意AI Agent(Claude Code / Cursor / Codex / Gemini CLI等)
- 操作系统:Windows(需WSL/Git Bash)/ macOS / Linux
- Shell环境:Bash 4.0+
依赖详情
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| Bash | 运行时 | 必需 | 系统自带(Linux/macOS),Windows需WSL |
| LLM API | API | 必需 | 由Agent平台内置LLM提供 |
API Key 配置
- 本Skill基于Bash脚本,无需任何外部API Key
- 所有计算与渲染均在本地完成,不涉及云服务调用
可用性分类
- 分类:MD+EXEC(纯Markdown指令驱动+命令行脚本执行)
- 说明:基于Markdown的AI Skill,通过自然语言指令驱动Agent调用本地脚本完成任务
已知限制
本免费体验版聚焦核心可视化场景,限制以下高级能力:
- ❌ 批量图表生成(一次生成>10张图表)
- ❌ 自定义主题与品牌色板
- ❌ 实时数据源接入(数据库/API直连)
- ❌ 图表模板库与可复用模板
- ❌ 图表导出为PNG/JPG等位图格式
- ❌ 多图表组合仪表盘的交互式联动
解锁全部高级能力请使用专业版:chart-gen-pro
- 当前为免费版本,如需完整功能请升级到付费版获取全部能力
错误处理
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |
评论
加载中…