在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

相关推荐
@蔓蔓喜欢你1 小时前
团队协作工具:提升开发效率的利器
人工智能·ai
阿部多瑞 ABU2 小时前
ADRO实战:用渐进式诱导“聊出”TATP完整合成路线——某国产大模型红队测试实录
安全·ai
ToBeTuring3 小时前
openclaw和claude code的配置文件参考
ai·claude code·openclaw
Hexian25803 小时前
SpringAI+RAG
java·spring·ai
Agent手记3 小时前
制造业生产安全隐患智能识别系统落地指南 —— 结合企业级Agent构建国产安全闭环防御体系
人工智能·安全·ai
搬砖的小码农_Sky3 小时前
NVIDIA Geforce RTX 5060 Ti显卡能本地部署的哪些AI应用?
人工智能·ai·gpu算力·agi
geinvse_seg4 小时前
QuantDinger 全网最全保姆级教程:5分钟搭建AI量化系统
人工智能·ai·蓝耘元生代·蓝耘maas
@蔓蔓喜欢你4 小时前
Git最佳实践:团队协作的基石
人工智能·ai
一切皆是因缘际会5 小时前
人工智能从对话工具向自主生产力跃迁
人工智能·深度学习·ai·重构
搬砖的小码农_Sky5 小时前
如何用Nvidia Geforce RTX 5060 Ti显卡进行本地Whisper语音转文字任务?
人工智能·ai·whisper·gpu算力