在 DSH 生态中,插件承担了扩展功能的作用。当 Agent 处理完数据后,直接在对话上下文中生成可视化图表,比复制数据到外部工具更高效。dsh-chartlab 便是为此设计,它允许用户将本地数据文件或 DuckDB 数据库中的数据转化为可交互的图表。
核心功能¶
该插件支持以下已核实的能力:
- 数据源支持:本地数据文件(
.csv、.xlsx、.xls)或 DuckDB 数据库(.duckdb、.ddb)。 - 图表类型:折线图、散点图。
- 交互操作:框选缩放、滚轮缩放、拖拽平移、悬浮读数、截图下载。
- 数据筛选:支持条件筛选(等于、不等于、区间、多选),并支持日期范围筛选。
- 数据分组:按某一列分组,不同取值对应不同的折线。
- SQL 查询:支持在图表中直接编写 SQL 语句进行查询。
- 主题与语言:图表会自动跟随 DSH 的语言设置(中/英)与主题设置(深/浅)。
- 会话隔离:每个对话拥有独立的图表缓存,删除会话会自动清理缓存。
安装与启用¶
在启用插件前,请检查源码与许可证(MIT)。安装命令如下:
dsh plugin --profile web add dsh-chartlab
典型用法¶
安装完成后,在对话中直接输入指令即可生成图表。
- 使用 CSV 文件:
用 dsh-chartlab 插件绘制 `/path/to/your-data.csv` 的图表
- 使用 Excel 文件:
用 dsh-chartlab 插件绘制 `/path/to/your-data.xlsx` 的图表
- 使用 DuckDB 数据库:
用 dsh-chartlab 插件绘制 `/path/to/your-data.duckdb` 中 `sales` 表的图表
*注:DuckDB 表名可省略,插件会自动读取第一张表。*
注意事项¶
目前存在以下已知限制,属于计划中的优化项:
- Excel 性能:Excel 文件目前采用全量同步加载,大文件时性能有待优化(Roadmap 计划支持流式读取)。
- Excel 工作表:目前仅读取第一个工作表(Roadmap 计划支持多工作表)。
总结¶
dsh-chartlab 专注于解决 Agent 产出数据的可视化问题,通过支持 SQL、分组和筛选,提供了灵活的数据分析工作台。它符合 DSH “一切皆插件” 的生态理念,适合需要在对话流中快速查看数据分布的开发者和数据分析人员。