技能版本 1.0.0

smart-charts

32种图表,3 个主题,2步生成: 1.上传数据 — 将 CSV / Excel / JSON 等格式的数据文件拖入对话框; 2.查看结果 — 交互式图表(HTML),可保存图表为图片.

价格

免费

  • 安装:免费

在组织开通时一次性收取;再次读取清单或下载不重复收费。

以上为公开标价。你的组织可能有协议价,以控制台显示的价格为准。

如何使用

  1. 为组织安装

    开通即安装:组织固定使用开通时的版本(当前为 1.0.0)。升级到新版本需要取消后重新开通。

  2. 创建凭证

    客户端使用组织凭证读取;绑定到数字人后,数字人使用绑定凭证按需加载。请求中携带:

    Authorization: Bearer $ZGI_MARKET_KEY

  3. 读取清单与安装包

    清单列出版本、文件和校验值;安装包是一个 zip 文件。

    读取清单
    curl "https://market-api.zgi.im/v1/market/skills/smart-charts/manifest" \
      -H "Authorization: Bearer $ZGI_MARKET_KEY"
    下载安装包
    curl "https://market-api.zgi.im/v1/market/skills/smart-charts/package" \
      -H "Authorization: Bearer $ZGI_MARKET_KEY" \
      -o smart-charts.zip

    读取清单和下载安装包不计入用量。下载后请用响应头中的 SHA-256 校验文件。

技能说明

名称
smart-charts
说明
将数据文件(CSV/TSV/TXT/XLSX/XLS/JSON)转化为独立交互式 ECharts HTML 图表——32 类图表、3 套主题,全离线无需 CDN。出图前可先取数据画像(--profile:每列 dtype/基数/缺失/样本/统计、实体粒度、候选洞察信号、疑似非数据行),让 agent 在用户没说想看什么时自己读懂数据并决定出什么图——哪列是 ID、哪列是维度、出什么图,全部由 agent 从画像的客观事实自行判断,技能不代笔;每张图内置事实卡(plot_stats + data_preview),其数值是解读时唯一可引用的数字。本技能负责出图与算事实,不产出书面报告或叙事文档。触发:用户提供或指向表格数据文件并要求出图;提到「画图/出图/可视化/生成图表/generate a chart/make a graph」;想把表格渲染成交互式 HTML 图表。不触发:要的是书面报告、叙事分析或幻灯片;没有数据文件;需要后端的仪表盘;图片/音频/视频等非表格内容。
会运行代码PythonNode.js

技能包内含脚本文件,加载技能的运行时可能会执行它们,安装前请先阅读。

SKILL.md 节选

# Smart Charts

> 将数据文件(CSV/Excel/JSON)转化为交互式 ECharts HTML。支持 32 种图表类型、3 套主题预设(default/classic/dark)、多文件合并、LLM 数据转换代码(沙箱执行)。
> CLI 全参数、flags 语义、多图/多文件细节、能力边界、错误码表、交付解读完整规范、FAQ 见 [REFERENCE.md](./references/REFERENCE.md)。

***

## Activation Triggers

**TRIGGER**

* 用户提供 / 指向一个表格数据文件,要求出图、可视化、生成图表
* 用户提到「画图」「出图」「生成图表」「数据可视化」「chart」「visualization」

**DO-NOT-TRIGGER**(命中任一条请改推其他技能,不要硬接)

* 要的是带结论叙事的报告/周报/复盘/汇报文档 → 用报告类技能(本技能出图 + 可溯源事实 + 候选洞察信号,不写叙事文档)
* 没有数据文件(纯文字描述、口头想法)
* 需要后端的 dashboard、图片/音频/视频等非表格内容
* 地图渲染:内置中国省级(`china`,含港澳台)与世界国家级(`world`,英文国名精确匹配);市级/区县级等更细区域需用户自备 GeoJSON 文件(`--geo-path`),本技能不代为下载

***

## 工作流(先画像,后选型)

`chart_type` 是 CLI 必填参数,而选型的依据(基数、分布、粒度、实体 vs 明细)本来只在选完型之后的 `plot_stats` 里才有——先决策、后取证会让选型变成瞎猜。所以按用户有没有说清意图分两条路:

**A. 用户意图明确**("对比各地区销售额""看月度趋势""占比构成")
→ 直接按选型表挑图型 + 轴 + 聚合口径,出图。**不要**为了走流程去跑 profile。若数据撑不起该意图(要趋势却没有时间列、要占比却全是明细行),如实说明并给出可行替代(例如把"趋势"换成按类别对比),不要硬画。

**B. 用户只给了数据,没说想看什么**(最高频)→ 两条命令:

1. `python {skill_base}/scripts/cli.py <file> --profile`(一条命令;只读不渲染不落盘),拿到:每列的 dtype/基数/缺失率/样本/统计、实体粒度(`grain`)、候选洞察信号(`signals`)、疑似非数据行(`row_quality`)。
2. **由你决定**出哪 1~3 张图:读 `columns` 的 dtype/样本/基数自行判断哪列是 ID、哪列是维度、哪列是度量,结合 `signals` 挑出值得讲的发现,据此定图型 + 轴 + 聚合口径,直接出图(`--transform-code` 聚合/透视 + `--title` 结论 + `--annotation` 解读)。交付时说明"为什么是这几张"。

> `signals` 里最值得优先出图的是 `divergent_category`(某类别逆势变化)与 `trend`:它们最容易被整体均值掩盖,也正是"用户自己没想到但一看就懂"的发现。

> **MUST NOT** 把选型责任推回给用户("你想看趋势、对比还是占比?")——哪列是 ID、哪列是维度、出什么图,是 agent 从画像客观事实自行判断的活,不是菜单让用户挑。

***

## 契约(8 条,MUST)

1. 列名解析后会被规范化:转小写、特殊字符→`_`(如 `总学时`→`总_学时`),中文保留;`--x-axis`/`--y-axis`/transform 必须引用规范化后的列名
2. transform 沙箱:可用变量仅 `df`/`pd`/`np`(`np.select`/`np.where` 可用),支持多语句(`;` 或换行分隔),必须产出名为 `result` 的 DataFrame;禁止 import/open/try/类定义(黑名单 + AST 白名单强制校验,违规返回带 `suggestion` 的错误)
3. pie/bar/treemap/funnel 等按「1 个分类列 + 1 个数值列」读数据(文档里的 `name`/`value` 指**角色**,不是要求列名叫这个——保留原列名可读性好,也不必多写一次 rename);分类频次图先用 transform 聚合成这两列,再用 `--x-axis <分类列> --y-axis <数值列>` 指定

SKILL.md 不止这些内容,安装后可阅读全文。

技能包内容

共 24 个文件,合计 2.9 MiB

  • SKILL.md26.0 KiB
  • _meta.json105 B
  • assets/china.json568.9 KiB
  • assets/echarts-liquidfill.min.js7.8 KiB
  • assets/echarts-wordcloud.min.js16.2 KiB
  • assets/echarts.min.js1000.7 KiB
  • assets/world.json986.6 KiB
  • references/REFERENCE.md39.6 KiB
  • requirements.txt946 B
  • scripts/__init__.py835 B
  • scripts/_bootstrap.py1.1 KiB
  • scripts/chart_generator.py32.2 KiB
  • scripts/cli.py22.7 KiB
  • scripts/data_parser.py39.1 KiB
  • scripts/data_transformer.py17.8 KiB
  • scripts/exceptions.py1.9 KiB
  • scripts/plot_stats.py24.7 KiB
  • scripts/profile.py22.4 KiB
  • scripts/regression_check.py72.2 KiB
  • scripts/renderers.py82.6 KiB
  • scripts/stats_kernels.py6.3 KiB
  • scripts/template.py29.9 KiB
  • scripts/texts.py5.3 KiB
  • scripts/themes.py4.1 KiB

来源与审核

审核状态
尚未审核,内容来自上游来源
许可证
未说明

审核状态是平台对上架信息的记录,不构成对上游服务质量或可用性的担保。