wanghetommy/ichartjs

An agent-first, JSON-driven visualization runtime for interactive charts, project views, and process diagrams with Canvas and SVG support.

解决的问题

iChart.js 旨在弥合 AI 代理与数据可视化之间的差距。它提供了一个结构化、与渲染器无关的运行时,使代理能够从原始数据直接过渡到经过验证的渲染图表,而无需猜测配置字段或图表类型。

工作原理

该库提供了一组公共 API(即“规划契约”),代理可以遵循这些 API 以确保准确性。典型的工作流程包括:

  1. 能力发现:代理调用 getCapabilities() 以查看该库实际能做什么。
  2. 数据检查:使用 inspectData(),代理分析数据集。
  3. 规划:代理使用 planChart() 根据用户意图确定最佳图表类型和编码方式。
  4. 验证:代理运行 validateSpec() 以确保生成的 JSON 规范在渲染前是正确的。
  5. 渲染:代理调用 createChart() 使用 SVG 或 Canvas 渲染可视化内容。
  6. 解释:代理使用 chart.explain() 向用户描述结果。

适用人群

  • AI 代理开发者:需要生成专业、经过验证的数据可视化的开发者。
  • 前端开发者:将可视化运行时集成到 Web 应用程序中,使 AI 代理能够运行的开发者。
  • 编码代理:能够修改项目代码以实现图表的代理。

主要亮点

  • 代理优先设计:包含机器可读的能力清单和 AI 代理的使用指南。
  • 与渲染器无关:支持 SVG 和 Canvas 渲染。
  • 导出选项:可导出为 JSON、SVG、PNG 和 JPEG。
  • 广泛支持:包含基础图表(折线图、柱状图、饼图等)、项目视图(甘特图、时间线)和图表(流程图、泳道图)。
  • 零生产依赖:运行时没有任何外部生产依赖。

相关

  • 项目
  • 项目
  • 项目
  • 项目