Dify+DeepSeek | Excel数据一键可视化(创建步骤案例)(echarts助手.yml)(文档表格转图表、根据表格绘制图表、Excel绘制图表)

Dify部署参考:Dify Rag部署并集成在线Deepseek教程(Windows、部署Rag、安装Ragan安装、安装Dify安装、安装ollama安装)

Dify+DeepSeek - Excel数据一键可视化(创建步骤案例)-DSL工程文件(可直接导入)

Dify+DeepSeek - Excel数据一键可视化(创建步骤案例)-Markdown示例文件

功能:输入文档或表格————>绘制图表

文章目录

  • 创建步骤
    • 点击创建Chatflow
    • 删除已有节点
    • 创建上传文件节点
      • 点击“开始”,创建输入字段text(文件路径或url)
      • 创建文档提取器
    • 为文档提取器输出创建`Excel转csv`节点
      • 新建节点
      • 模型我选择deepseek-reasoner
      • 按照以下格式填入prompt(输入数据选择`文档提取器/(x)text`)
      • 修改节点名称为`Excel转csv`
    • 为`Excel转csv`节点创建参数提取器节点
      • 新建节点
      • 设置指令
      • 设置模型
      • 设置输入变量
      • 添加提取参数`csv_data`
    • 为参数提取器节点创建代码执行节点
      • 新建节点
      • 代码填入
      • 代码解释
        • 1. **流程架构**:
        • 2. **核心算法**:
        • 3. **ECharts配置生成**:
        • 4. **异常处理边界**:
        • 5. **运维增强特性**:
    • 为执行代码节点添加直接回复节点
      • 创建节点
      • 输入直接回复内容(注意我修改了部分变量名,可能跟前面不兼容)
  • ~~节点测试~~ (无效)
    • 测试`文档提取器`(Excel转csv失败了,改成Markdown转csv)
      • 运行
      • 我的dify见鬼了,提取excel都是空的
      • 只能修改方案了,将后面的`Excel转csv`改成`Markdown转csv`
      • 测试提取markdown(没有问题)
  • 测试运行
    • 点击预览,然后上传文件
    • 在聊天框随便输入内容然后发送
    • 然后工作流就会逐个运行,最后输出结果
    • 点开右边工作流节点,能看到各个节点输入输出,方便调试

创建步骤

点击创建Chatflow

在这里插入图片描述

echart助手

在这里插入图片描述

删除已有节点

选中按Del:
在这里插入图片描述
在这里插入图片描述

创建上传文件节点

点击“开始”,创建输入字段text(文件路径或url)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

创建文档提取器

在这里插入图片描述
添加text字段输入:

在这里插入图片描述
在这里插入图片描述

为文档提取器输出创建Excel转csv节点

新建节点

在这里插入图片描述

模型我选择deepseek-reasoner

在这里插入图片描述

按照以下格式填入prompt(输入数据选择文档提取器/(x)text

#角色
你是一个数据整理专家,删除数据格式的整理和格式的转换。
#数据
囚 文档提取器/(x)text
#任务
将数据转换成csv格式

在这里插入图片描述
在这里插入图片描述

修改节点名称为Excel转csv

在这里插入图片描述

Excel转csv节点创建参数提取器节点

新建节点

在这里插入图片描述

设置指令

#任务
-提取csv格式的字符串

在这里插入图片描述

设置模型

在这里插入图片描述
在这里插入图片描述

设置输入变量

在这里插入图片描述

在这里插入图片描述

添加提取参数csv_data

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

为参数提取器节点创建代码执行节点

新建节点

在这里插入图片描述
在这里插入图片描述

代码填入

import csv
import json

def main(csv_data):
    # 解析CSV
    reader = csv.DictReader(csv_data.strip().splitlines())
    rows = list(reader)
    
    # 自动识别列结构
    headers = reader.fieldnames
    if not headers or len(headers) < 2:
        return {'output': 'Error: 需要至少两列数据(1个分类列+1个数值列)'}
    
    # 默认第一列为分类轴,其余为数值列
    category_col = headers[0]
    value_columns = headers[1:]
    
    # 提取数据
    categories = [row[category_col] for row in rows]
    series_data = [
        {
            "name": col,
            "type": "bar",
            "data": [float(row[col]) for row in rows]  # 处理浮点数
        } for col in value_columns
    ]
    
    # 构建ECharts配置
    echarts_config = {
        "xAxis": {"type": "category", "data": categories},
        "yAxis": {"type": "value"},
        "series": series_data
    }
    
    # 返回结果
    return {'output': f'```echarts\n{json.dumps(echarts_config, ensure_ascii=False)}\n```'}

代码解释

以下是对该代码的详细技术解析:

1. 流程架构
  • 输入:接收CSV格式的原始字符串数据
  • 处理:通过三层转换 pipeline:
    CSV文本 → Python字典结构 → ECharts JSON配置 → Markdown代码块封装
    
  • 输出:符合Markdown扩展语法规范的ECharts图表代码块
2. 核心算法
  • 列智能识别算法:采用启发式规则
    if len(headers) >=2:
        第一列 = 分类轴
        后续列 = 数值系列
    else:
        触发错误处理
    
  • 类型强制转换:float(row[col])实现字符串到数值的类型安全转换
3. ECharts配置生成
  • 生成符合Apache ECharts v5+规范的配置结构
  • 动态构建坐标系:
    • X轴:自动映射分类维度
    • Y轴:自动推断为数值轴
  • 系列数据采用bar(柱状图)可视化编码
4. 异常处理边界
  • 列数校验:强制要求至少包含2列数据
  • 浮点转换:假设所有数值列均可转换为float类型(需注意潜在TypeError风险)
5. 运维增强特性
  • 输入数据规范化:通过strip().splitlines()处理不同平台的换行符差异
  • Unicode安全:ensure_ascii=False确保中文等字符正确显示
  • 结构化错误消息:返回标准字典格式,方便日志采集和监控

该代码特别适用于运维监控场景下的自动化报表生成,可将Zabbix、Prometheus等监控系统导出的CSV指标数据快速转换为可交互的可视化图表。

为执行代码节点添加直接回复节点

创建节点

在这里插入图片描述

输入直接回复内容(注意我修改了部分变量名,可能跟前面不兼容)

在这里插入图片描述

filePath:
{{#1741057279322.filePath#}}
</br>

文档提取器text:
{{#1741058246976.text#}}
</br>

Excel转csv, csv text:
{{#1741058730753.text#}}
</br>

参数提取器csv_data:
{{#1741065751183.csv_data#}}
</br>

代码执行output:
{{#1741082638678.output#}}

节点测试 (无效)

测试文档提取器(Excel转csv失败了,改成Markdown转csv)

运行

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

我的dify见鬼了,提取excel都是空的

在这里插入图片描述

只能修改方案了,将后面的Excel转csv改成Markdown转csv

在这里插入图片描述

不过提示词貌似都不用改。

测试提取markdown(没有问题)

在这里插入图片描述

测试运行

点击预览,然后上传文件

在这里插入图片描述

在聊天框随便输入内容然后发送

在这里插入图片描述

然后工作流就会逐个运行,最后输出结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

点开右边工作流节点,能看到各个节点输入输出,方便调试

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/984378.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

linux下ollama离线安装

一、离线安装包下载地址 直接下载地址&#xff1a; https://github.com/ollama/ollama/releases/tag/v0.5.12 网络爬取地址&#xff1a; MacOS https://ollama.com/download/Ollama-darwin.zip Linux curl -fsSL https://ollama.com/install.sh | sh Windows https://olla…

MAC 搭建Dify+DeepSeek-R1整合部署

在开始安装之前&#xff0c;我们需要确保系统满足以下基本要求&#xff1a; CPU至少2核心内存至少4GB&#xff08;建议8GB以上&#xff09;硬盘空间至少20GB&#xff08;为了后续扩展&#xff09;操作系统支持&#xff1a;Windows、macOS或LinuxDocker环境 1. dify的安装步骤…

OpenManus介绍及本地部署体验

1.OpenManus介绍 OpenManus&#xff0c;由 MetaGPT 团队精心打造的开源项目&#xff0c;于2025年3月发布。它致力于模仿并改进 Manus 这一封闭式商业 AI Agent 的核心功能&#xff0c;为用户提供无需邀请码、可本地化部署的智能体解决方案。换句话说&#xff0c;OpenManus 就像…

springboot011基于springboot的课程作业管理系统(源码+包运行+LW+技术指导)

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得难了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等&#xff0c;你想解决的问题&#xff0c;今天…

swift -(5) 汇编分析结构体、类的内存布局

一、结构体 在 Swift 标准库中&#xff0c;绝大多数的公开类型都是结构体&#xff0c;而枚举和类只占很小一部分 比如Bool、 Int、 Double、 String、 Array、 Dictionary等常见类型都是结构体 ① struct Date { ② var year: Int ③ var month: Int ④ …

全域网络安全防御 健全网络安全防护体系

网络安全基本概念 网络安全&#xff08;Cyber Security&#xff09;是指网络系统的硬件、软件及其系统中的数据受到保护&#xff0c;不因偶然的或者恶意的原因而遭受到破坏、更改、泄露&#xff0c;系统连续可靠正常地运行&#xff0c;网络服务不中断&#xff0c;使网络处于稳…

记录小白使用 Cursor 开发第一个微信小程序(二):创建项目、编译、预览、发布(250308)

文章目录 记录小白使用 Cursor 开发第一个微信小程序&#xff08;二&#xff09;&#xff1a;创建项目、编译、预览、发布&#xff08;250308&#xff09;一、创建项目1.1 生成提示词1.2 生成代码 二、编译预览2.1 导入项目2.2 编译预览 三、发布3.1 在微信开发者工具进行上传3…

uploadlabs通关思路

目录 靶场准备 复现 pass-01 代码审计 执行逻辑 文件上传 方法一&#xff1a;直接修改或删除js脚本 方法二&#xff1a;修改文件后缀 pass-02 代码审计 文件上传 1. 思路 2. 实操 pass-03 代码审计 过程&#xff1a; 文件上传 pass-04 代码审计 文件上传 p…

CTFHub-FastCGI协议/Redis协议

将木马进行base64编码 <?php eval($_GET[cmd]);?> 打开kali虚拟机&#xff0c;使用虚拟机中Gopherus-master工具 Gopherus-master工具安装 git clone https://github.com/tarunkant/Gopherus.git 进入工具目录 cd Gopherus 使用工具 python2 "位置" --expl…

前端 | 向后端传数据,判断问题所在的调试过程

目录 ​编辑 1. 在 vue 文件中&#xff0c;在调用函数之前 先打印传入的数据 2. 在 js 文件中&#xff0c;打印接收到的数据 3. 在浏览器 Network 面板查看请求数据 4. 在 server.js 中查看请求数据 5. 确保 JSON 格式正确 知识点&#xff1a;JSON.stringify(req.body, …

STL之list的使用(超详解)

目录 一、list的介绍及使用 1.1 list的介绍 1.2 list的使用 1.2.1 list的构造 1.2.2 iterator的使用 1.2.3capacity&#xff08;容量相关&#xff09; 1.2.4 element access&#xff08;元素访问&#xff09; 1.2.5 modifiers&#xff08;链表修改&#xff09;…

在【k8s】中部署Jenkins的实践指南

&#x1f407;明明跟你说过&#xff1a;个人主页 &#x1f3c5;个人专栏&#xff1a;《Kubernetes航线图&#xff1a;从船长到K8s掌舵者》 &#x1f3c5; &#x1f516;行路有良友&#xff0c;便是天堂&#x1f516; 目录 一、引言 1、Jenkins简介 2、k8s简介 3、什么在…

Ae 效果详解:VR 发光

Ae菜单&#xff1a;效果/沉浸式视频/VR 发光 Immersive Video/VR Glow VR 发光 VR Glow效果用于在 VR 视频中创建光晕效果&#xff0c;并针对等距柱状投影&#xff08;Equirectangular&#xff09;进行优化&#xff0c;以确保全景画面中的光晕均匀分布&#xff0c;不受画面边缘…

猫耳大型活动提效——组件低代码化

1. 引言 猫耳前端在开发活动的过程中&#xff0c;经历过传统的 pro code 阶段&#xff0c;即活动页面完全由前端开发编码实现&#xff0c;直到 2020 年接入公司内部的低代码活动平台&#xff0c;满足了大部分日常活动的需求&#xff0c;运营可自主配置活动并上线&#xff0c;释…

ESP8266UDP透传

1. 配置 WiFi 模式 ATCWMODE3 // softAPstation mode 响应 : OK 2. PC 连⼊入 ESP8266 softAP 就是连接wifi 3.查询ESP8266设备的IP地址 ATCIFSR 响应: CIFSR: APIP, "192.168.4.1" CIFSR: APMAC, "1a: fe: 34: a5:8d: c6" CIFSR: STAIP, "192.…

【仿muduo库one thread one loop式并发服务器实现】

文章目录 一、项目介绍1-1、项目总体简介1-2、项目开发环境1-3、项目核心技术1-4、项目开发流程1-5、项目如何使用 二、框架设计2-1、功能模块划分2-1-1、SERVER模块2-1-2、协议模块 2-2、项目蓝图2-2-1、整体图2-2-2、模块关系图2-2-2-1、Connection 模块关系图2-2-2-2、Accep…

私有云基础架构与运维(二)

二.私有云基础架构 【项目概述】 经过云计算基础知识及核心技术的学习后&#xff0c;希望进一步了解 IT 基础架构的演变过 程&#xff0c;通过学习传统架构、集群架构以及私有云基础架构的相关知识&#xff0c;认识企业从传统 IT 基 础架构到私有云基础架构转型的必要性。…

DeepSeek R1-32B医疗大模型的完整微调实战分析(全码版)

DeepSeek R1-32B微调实战指南 ├── 1. 环境准备 │ ├── 1.1 硬件配置 │ │ ├─ 全参数微调:4*A100 80GB │ │ └─ LoRA微调:单卡24GB │ ├── 1.2 软件依赖 │ │ ├─ PyTorch 2.1.2+CUDA │ │ └─ Unsloth/ColossalAI │ └── 1.3 模…

vue3 vite项目安装eslint

npm install eslint -D 安装eslint库 npx eslint --init 初始化配置&#xff0c;按项目实际情况选 自动生成eslint.config.js&#xff0c;可以添加自定义rules 安装ESLint插件 此时打开vue文件就会标红有问题的位置 安装prettier npm install prettier eslint-config-pr…

【五.LangChain技术与应用】【10.LangChain ChatPromptTemplate(下):复杂场景下的应用】

凌晨两点的西二旗,你盯着监控大屏上跳动的错误日志,智能客服系统在流量洪峰中像纸船一样摇晃。用户骂声塞满弹窗:“等了十分钟就这?”“刚才说的怎么不认了?”“我要人工!!”——这时候你需要的不只是ChatPromptTemplate,而是给对话系统装上航天级操控台。 一、模板组…