Install
openclaw skills install @thcjp/chart-gen-freeopenclaw skills install @thcjp/chart-gen-free一个面向命令行场景的轻量级数据可视化工具,通过单一脚本即可生成十余种图表形态。无需安装Python科学计算栈或前端图表库,开箱即用。
本工具通过(请参考skill目录中的脚本文件)脚本接收用户输入的数据,输出可在终端直接显示的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中声明的使用场景,均已在上述能力点中提供对应的操作支持。运维同学需要在每日站会前快速对比四个部门的预算消耗,使用终端柱状图即可在不打开浏览器的情况下完成展示:
chart.sh bar "销售:85,市场:62,研发:93,运维:41" --title "部门预算(万)"
将过去8小时的CPU负载序列压缩为一行sparkline,嵌入到监控脚本输出中:
chart.sh sparkline "3,7,2,8,5,9,1,6"
输出:▃▆▁█▄█▁▅,一眼即可看出峰值在第4个采样点。
将本月每日活跃用户数据生成SVG文件,嵌入到周报文档中:
chart.sh svg-line "月度活跃" "1日:1200,8日:1850,15日:2120,22日:2480,29日:2630"
季度市场份额对比,使用饼图直观呈现:
chart.sh pie "苹果:35,三星:25,华为:20,其他:20" --title "Q3市场份额"
脚本位于skill目录下的(请参考skill目录中的脚本文件),无需额外安装。
chart.sh bar "A:30,B:50,C:20" --title "示例"
预期输出:
示例
A ██████████░░░░░░░░░░ 30
B █████████████████░░░ 50
C ██████░░░░░░░░░░░░░░ 20
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"
▃▆▁█▄█▁▅
A:脚本路径未在PATH中,请使用绝对路径或相对路径调用,例如(请参考skill目录中的脚本文件) bar ...。
A:终端字体未启用等宽显示,建议使用等宽字体如"DejaVu Sans Mono"或"Source Code Pro"。
A:浏览器缓存了旧版本,强制刷新(Ctrl+Shift+R)即可。
A:需要安装Git Bash或WSL环境,原生PowerShell不支持bash脚本语法。
A:使用chart.sh dashboard "标题"生成仪表盘骨架,再分别生成子图表插入。
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| Bash | 运行时 | 必需 | 系统自带(Linux/macOS),Windows需WSL |
| LLM API | API | 必需 | 由Agent平台内置LLM提供 |
本免费体验版聚焦核心可视化场景,限制以下高级能力:
解锁全部高级能力请使用专业版:chart-gen-pro
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |