← Back to skills
extension
Category: Data & AnalyticsNo API key required

七合一图表生成器-于得泉出品

于得泉 出品 · 七合一图表生成器技能。当用户需要把数据做成图表,或提到"画个图/做图表/生成图表/出张图",且图表类型属于以下之一时使用:河流图、漏斗图、瀑布图、雷达图、K线图、南丁格尔玫瑰图、正负条形图。基于已内嵌 ECharts 引擎的单文件离线 HTML,数据不出本机,可导出 PNG。支持 8 套预设配色与红涨绿跌等语义色自定义。

personAuthor: user_296ff9e5hubcommunity

七合一图表生成器(于得泉 出品 · 技能版)

这是什么

把已上线的「七合一图表生成器」(于得泉 出品)Web 应用,封装成一个可被智能体直接调用的技能: 用户用自然语言给数据,智能体调用本技能生成一张单文件、离线、可双击打开的图表 HTML, 并可直接预览 / 发布成分享链接发给学员。

七种图表:河流图 / 漏斗图 / 瀑布图 / 雷达图 / K线图 / 南丁格尔玫瑰图 / 正负条形图。

何时使用

  • 用户要求把一组数据做成某种图表("把这组销售数据做成瀑布图""画个漏斗图")
  • 用户提到"图表生成器 / 出图 / 做图"
  • 需要离线、不联网、数据不出本机的图表文件(可插入 Word / PPT / 微信)

核心思路(重要)

本技能不重写绘图逻辑。绘图引擎(assets/chart_template.html,已内嵌 ECharts + 7 种图表的 build 函数、配色面板、PNG 导出) 是已验证可用的成品。生成脚本只做一件事:在模板里注入一段"选中图表类型 + 填入数据"的引导脚本, 产出独立 HTML。因此零重写、零风险、与线上版 100% 一致。

调用方式

使用托管 Python(Windows 上用 Windows 风格路径):

C:/Users/sunbo/.workbuddy/binaries/python/versions/3.13.12/python.exe \
  C:/Users/sunbo/.workbuddy/skills/chart-generator/scripts/generate.py \
  --type funnel \
  --data "data = [['浏览官网',10000],['注册会员',6200],['提交订单',2100],['完成支付',1500]]" \
  --out C:/Users/sunbo/WorkBuddy/2026-09-04-15-16-23/输出/漏斗图.html

然后用 present_files 打开该 HTML 预览(内置浏览器直接渲染)。

参数

  • --type:必填,取值见下表
  • --data:必填,图表数据代码(JS 赋值语句字符串),格式因类型而异
  • --out:必填,输出 HTML 绝对路径
  • --palette:可选,预设配色 classic/business/warm/cold/macaroon/mono/contrast/festive
  • --title:可选,自定义页面标题

各类型数据格式(智能体据此把用户数据整理成代码)

| 类型(type) | 中文 | data 代码写法 | 备注 | |---|---|---|---| | themeRiver | 河流图 | data = [['线上',156,'2026-01'],['门店',98,'2026-01'],...] | 每行 [主题,数值,日期];日期支持 '2026-01' / '2026-01-15' / 纯年份 2026 | | funnel | 漏斗图 | data = [['浏览',10000],['注册',6200],...] | 每行 [阶段,数量],自动按大小降序 | | waterfall | 瀑布图 | data = [['期初',800],['采购',420],['销售',-350],['期末',855]] | 减少写负数;名称含"期初/期末/合计"画总量柱 | | radar | 雷达图 | dimensions=['沟通','执行',...]; data=[{name:'A',values:[88,76,...]}] | 先写 dimensions,再写多组 data | | candlestick | K线图 | dates=['9/1','9/2',...]; data=[[开,收,低,高],...] | 红涨绿跌 | | rose | 南丁格尔玫瑰图 | data = [['华东',320],['华南',268],...] | 每行 [类别,数值] | | divergingBar | 正负条形图 | data = [['北京',126,-34],['上海',148,-28],...] | 双值 [项目,正,负] 左右对照;也可单值 [项目,数值(可负)] |

工作流(智能体执行)

  1. 识别用户要的图表类型与数据。
  2. 把用户数据整理成上表对应的 --data 代码(多行用 \n 拼接,保持合法 JS)。
  3. 调用 generate.py 生成 HTML。
  4. present_files 预览;如需分享,用 workbuddy_sites_deploy 发布成链接。
  5. 若用户只想自己玩工具,直接发 assets/chart_template.html 或给出已发布链接。

注意事项

  • 生成物与线上版完全一致,均为离线单文件。
  • --data 必须是合法 JS 赋值;括号内用中文/英文引号均可,但需成对。
  • 不要修改 assets/chart_template.html 的绘图逻辑;若需新增图表类型,应在该文件内扩展 CHARTS 后同步更新本说明。