在Dify中使用Echarts生成一个图表

1、需求

Dify中通过文件上传的方式,获取到文件数据,然后通过Echarts进行图表的展示。

整体思路如下: 开始节点(文件上传 ) -> 文档提取器(获取文档内容 ) -> 参数提取器(整理需要获取的参数 )-> 代码执行节点(构建echarts图表需要的参数 )-> 显示节点(进行图表的展示

2、操作步骤

2.1 开始节点设置添加文件

此处设置文件的变量名称为input_file

2.2 通过文档提取器提取文档中的内容


文档提取器提取到的内容如下:

2.3 通过参数提取器进行参数的提取

提示词如下:

复制代码
将输入转换成一个字符串,示例如下 :
"[['1月', '2月'], ['260','60']]"

2.4 代码执行节点进行数据的转换


完整的代码如下:

js 复制代码
function main({json_str}) {
    // 1. 替换单引号为双引号(JSON标准格式)
    let jsonString = json_str.replace(/'/g, '"');
    // 2. 解析为 JavaScript 数组
    const json = JSON.parse(jsonString);
console.info(json);
    let option = {
        xAxis: {
            type: 'category',
            data: json[0]
        },
        yAxis: {
            type: 'value'
        },
        series: [
            {
            data: json[1],
            type: 'bar',
            showBackground: true,
            backgroundStyle: {
                color: 'rgba(180, 180, 180, 0.2)'
            }
            }
        ]
    };

   let output = "```echarts\n" + JSON.stringify(option) + "\n```";

    return {
        result: output
    }
}

2.5 添加显示节点显示图表

3、运行结果

4、完整DSL文件

https://gitee.com/huan1993/configuration/blob/master/ai/dify/使用Echarts生成图表.yml

相关推荐
云草桑3 小时前
C# .net ai Agent AI视觉应用 写代码 改作业 识别屏幕 标注等
ai·c#·.net·agent
测试工程师成长之路4 小时前
如何使用 AI 和技术策略来提高软件测试覆盖率
软件测试·ai·测试覆盖率
日升_rs5 小时前
Browser-use 详细介绍&使用文档
python·ai
wang_yb7 小时前
模型的泛化性能度量:方法、比较与实现
ai·databook
翱翔-蓝天8 小时前
GitHub和Gitee上的一些AI项目
ai
你觉得20516 小时前
天津大学第二讲:《深度解读DeepSeek:部署、使用、安全》|附PPT下载方法
大数据·人工智能·安全·机器学习·ai·知识图谱·内容运营
Elastic 中国社区官方博客20 小时前
Elasticsearch:构建 AI 驱动的搜索体验
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
张高兴1 天前
张高兴的大模型开发实战:(三)使用 LangGraph 为对话添加历史记录
python·ai·langchain·大模型
AlfredZhao1 天前
Oracle AI应用的LLM模型典型配置
ai·llm·deepseek·siliconflow·selectai
自由鬼1 天前
Hugging Face 量化部署指南
人工智能·ai