作者: lfenghx 版本: 1.2.0 类型: tool
json2chart 是一个智能的 JSON 数据可视化工具,能够将 JSON 格式的数据自动转换为多种类型的交互式图表。该工具采用 LLM 智能分析技术,自动识别数据结构并推荐最佳可视化方案。

视频教程:https://www.bilibili.com/video/BV1qj1CB8Enz
- 自动检测 JSON 数据中的类别字段和数值字段
- 通过大模型智能分析数据结构,推荐最佳图表类型
- 支持自动生成合适的图表标题和数据系列名称
- 提供字段检测失败时的自动后备机制
- 饼状图:适合展示比例分布数据
- 柱状图:适合比较不同类别的数值大小
- 折线图:适合展示数据随时间或其他连续变量的变化趋势
- 雷达图:适合多维度数据对比分析(至少需要 3 个数值字段)
- 漏斗图:适合展示流程转化率数据
- 散点图:适合分析两个数值指标间的相关性
- 数据分组支持:可按指定字段分组展示多系列图表
- 自定义配色方案:支持调整图表颜色的饱和度和亮度
- 数据类型智能转换:自动尝试将相关字段转换为适合的数值类型
- 自动错误处理:提供友好的错误提示和异常处理机制
- 多种数据格式支持:接受 JSON 对象数组或 JSON 字符串格式
- 基于 ECharts 生成交互式图表配置
- 集成大模型分析能力,提升图表生成的智能性
- 使用 pandas 进行数据处理和分析
- 采用模块化设计,各图表类型独立实现,便于扩展
- 支持流式输出图表配置结果
- 数据分析报告自动可视化
- 业务指标监控面板生成
- 统计数据快速展示
- 数据探索和模式发现
- API 响应数据的即时可视化
一维数据
[
{
"设备编号": "CNC1",
"效率": 76.0
},
{
"设备编号": "CNC2",
"效率": 77.0
}
]
二维数据
[
{
"姓名": "张三",
"月份": "1 月",
"迟到次数": 2,
"迟到总时间": 5
},
{
"姓名": "张三",
"月份": "2 月",
"迟到次数": 3,
"迟到总时间": 7
}
]

三维数据
[
{
"姓名": "张三",
"迟到次数": 14,
"旷工天数": 15,
"早退次数": 1
},
{
"姓名": "李四",
"迟到次数": 2,
"旷工天数": 14,
"早退次数": 3
}
]

多维度折线数据
[
{"成绩月份": "2024-09", "课程编号": "002", "成绩": 80.0},
{"成绩月份": "2024-09", "课程编号": "003", "成绩": 83.0},
{"成绩月份": "2024-09", "课程编号": "004", "成绩": 83.0},
{"成绩月份": "2024-09", "课程编号": "006", "成绩": 75.0},
{"成绩月份": "2024-09", "课程编号": "008", "成绩": 68.0},
{"成绩月份": "2024-09", "课程编号": "010", "成绩": 80.0},
{"成绩月份": "2024-09", "课程编号": "013", "成绩": 40.0},
{"成绩月份": "2024-09", "课程编号": "103", "成绩": 89.0},
{"成绩月份": "2024-10", "课程编号": "002", "成绩": 83.0},
{"成绩月份": "2024-10", "课程编号": "003", "成绩": 94.0},
{"成绩月份": "2024-10", "课程编号": "004", "成绩": 80.5},
{"成绩月份": "2024-10", "课程编号": "006", "成绩": 77.0},
{"成绩月份": "2024-10", "课程编号": "008", "成绩": 70.0},
{"成绩月份": "2024-10", "课程编号": "010", "成绩": 81.0},
{"成绩月份": "2024-10", "课程编号": "013", "成绩": 37.0},
{"成绩月份": "2024-10", "课程编号": "103", "成绩": 89.0},
{"成绩月份": "2024-11", "课程编号": "002", "成绩": 93.5},
{"成绩月份": "2024-11", "课程编号": "003", "成绩": 89.0},
{"成绩月份": "2024-11", "课程编号": "004", "成绩": 87.0},
{"成绩月份": "2024-11", "课程编号": "006", "成绩": 80.0},
{"成绩月份": "2024-11", "课程编号": "008", "成绩": 72.0},
{"成绩月份": "2024-11", "课程编号": "010", "成绩": 81.0},
{"成绩月份": "2024-11", "课程编号": "013", "成绩": 32.0},
{"成绩月份": "2024-11", "课程编号": "103", "成绩": 89.0},
{"成绩月份": "2024-12", "课程编号": "002", "成绩": 80.0},
{"成绩月份": "2024-12", "课程编号": "006", "成绩": 85.0},
{"成绩月份": "2025-01", "课程编号": "002", "成绩": 94.0},
{"成绩月份": "2025-01", "课程编号": "003", "成绩": 88.0},
{"成绩月份": "2025-01", "课程编号": "004", "成绩": 95.0},
{"成绩月份": "2025-01", "课程编号": "010", "成绩": 82.0},
{"成绩月份": "2025-01", "课程编号": "013", "成绩": 31.0},
{"成绩月份": "2025-01", "课程编号": "103", "成绩": 89.0}
]

雷达图
[
{
"产品": "产品 A",
"质量": 85,
"价格": 90,
"服务": 75,
"创新": 95,
"知名度": 80
},
{
"产品": "产品 B",
"质量": 92,
"价格": 83,
"服务": 88,
"创新": 85,
"知名度": 90
},
{
"产品": "产品 C",
"质量": 78,
"价格": 95,
"服务": 82,
"创新": 70,
"知名度": 75
}
]

漏斗图
[
{
"阶段": "浏览产品",
"用户数": 10000
},
{
"阶段": "加入购物车",
"用户数": 5000
},
{
"阶段": "提交订单",
"用户数": 3000
},
{
"阶段": "完成支付",
"用户数": 2000
},
{
"阶段": "确认收货",
"用户数": 1800
}
]

散点图
[
{
"产品名称": "智能手机 A",
"价格(元)": 5999,
"月销量(台)": 12000,
"品牌": "品牌 X"
},
{
"产品名称": "智能手机 B",
"价格(元)": 4599,
"月销量(台)": 18000,
"品牌": "品牌 X"
},
{
"产品名称": "智能手机 C",
"价格(元)": 3999,
"月销量(台)": 25000,
"品牌": "品牌 Y"
},
{
"产品名称": "智能手机 D",
"价格(元)": 2999,
"月销量(台)": 32000,
"品牌": "品牌 Y"
},
{
"产品名称": "智能手机 E",
"价格(元)": 1999,
"月销量(台)": 45000,
"品牌": "品牌 Z"
},
{
"产品名称": "智能手机 F",
"价格(元)": 6999,
"月销量(台)": 8000,
"品牌": "品牌 X"
}
]

工具输出标准的 ECharts 配置字符串,可直接在支持 ECharts 的环境中渲染出交互式图表。
插件 github 仓库地址:https://github.com/lfenghx/json2chart
邮箱:550916599@qq.com vx:lfeng2529230 github:lfenghx