当前位置: 首页 > article >正文

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 jsondef main(csv_data):# 解析CSVreader = csv.DictReader(csv_data.strip().splitlines())rows = list(reader)# 自动识别列结构headers = reader.fieldnamesif 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(没有问题)

在这里插入图片描述

测试运行

点击预览,然后上传文件

在这里插入图片描述

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

在这里插入图片描述

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

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

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

在这里插入图片描述

相关文章:

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

Dify部署参考&#xff1a;Dify Rag部署并集成在线Deepseek教程&#xff08;Windows、部署Rag、安装Ragan安装、安装Dify安装、安装ollama安装&#xff09; DifyDeepSeek - Excel数据一键可视化&#xff08;创建步骤案例&#xff09;-DSL工程文件&#xff08;可直接导入&#x…...

RK3568平台(GPIO篇)Android平台集成libgpiod库

一.libgpiod 介绍 libgpiod 是一个用于与 Linux GPIO(通用输入输出)子系统交互的用户空间库。它提供了一组简单且高效的 API,允许开发者通过用户空间程序控制 GPIO 引脚,而无需编写内核模块或直接操作 /sys/class/gpio 接口。libgpiod 是 Linux 内核推荐的 GPIO 访问方式,…...

API和SDK

API&#xff08;Application Programming Interface&#xff09;和 SDK&#xff08;Software Development Kit&#xff09;是软件开发中密切相关的概念&#xff0c;但它们之间存在一些区别&#xff1a; 定义 API &#xff1a;是一组预先定义的函数、协议和规范&#xff0c;用…...

CR电路介绍

CR电路&#xff08;RC电路&#xff09;介绍 CR电路&#xff08;电阻-电容电路&#xff09;由电阻&#xff08;R&#xff09;和电容&#xff08;C&#xff09;组成&#xff0c;是电子系统中的基础模块&#xff0c;广泛用于信号处理、定时、滤波等场景。以下是其核心功能、实现方…...

安装与配置 STK-MATLAB 接口

STK版本为11.6 Matlab版本为R2018a STK 提供 Connect 和 Object Model (COM) 两种接口与 MATLAB 交互&#xff0c;推荐使用 COM接口进行二次开发。 确保安装了 STK&#xff0c;并且 MATLAB 可以访问 STK Object Model。 在 MATLAB 中运行&#xff1a; % 添加 STK COM 库&#…...

NUMA架构介绍

NUMA 架构详解 NUMA&#xff08;Non-Uniform Memory Access&#xff0c;非统一内存访问&#xff09; 是一种多处理器系统的内存设计架构&#xff0c;旨在解决多处理器系统中内存访问延迟不一致的问题。与传统的 UMA&#xff08;Uniform Memory Access&#xff0c;统一内存访问…...

计算机二级MS之PPT

声明&#xff1a;跟着大猫和小黑学习随便记下一些笔记供大家参考&#xff0c;二级考试之前将持续更新&#xff0c;希望大家二级都能轻轻松松过啦&#xff0c;过了二级的大神也可以在评论区留言给点建议&#xff0c;感谢大家&#xff01;&#xff01; 文章目录 考题难点1cm25px…...

python中采用opencv作常规的图片处理的方法~~~

在python中&#xff0c;我们经常会需要对图片做灰度/二值化/模糊等处理&#xff0c;这时候opencv就是我们的好帮手了&#xff0c;下面我来介绍一下相关用法: 首先&#xff0c;需要安装opencv-python库: 然后&#xff0c;在你的代码中引用: import cv2 最后就是代码了&#x…...

deepseek在pycharm 中的配置和简单应用

对于最常用的调试python脚本开发环境pycharm&#xff0c;如何接入deepseek是我们窥探ai代码编写的第一步&#xff0c;熟悉起来总没坏处。 1、官网安装pycharm社区版&#xff08;免费&#xff09;&#xff0c;如果需要安装专业版&#xff0c;需要另外找破解码。 2、安装Ollama…...

Redis数据结构,渐进式遍历,数据库管理

1.Redis的其他数据结构 前面我们主要讲述了Redis中比较常用的集中数据结构String&#xff0c;List&#xff0c;Hash&#xff0c;Set&#xff0c;Zset&#xff0c;但这并不代表Redis只用这几种数据结构还有如Streams&#xff0c;Geospatial&#xff0c;Hyperloglog&#xff0c;…...

【CSS 】Class Variance Authority CSS 类名管理工具库

1.背景、什么是 CVA&#xff1f; Class Variance Authority (CVA) 是一个用于管理 CSS 类名 的工具库&#xff0c;特别适合在 React 或 Vue 等前端框架中使用。它可以帮助你更轻松地处理组件的 样式变体&#xff08;Variants&#xff09;&#xff0c;比如按钮的不同状态&#…...

[Python入门学习记录(小甲鱼)]第5章 列表 元组 字符串

第5章 列表 元组 字符串 5.1 列表 一个类似数组的东西 5.1.1 创建列表 一个中括号[ ] 把数据包起来就是创建了 number [1,2,3,4,5] print(type(number)) #返回 list 类型 for each in number:print(each) #输出 1 2 3 4 5#列表里不要求都是一个数据类型 mix [213,"…...

《量子潮涌下,DataWorks中AI模型训练框架的变革征途》

在科技迅猛发展的当下&#xff0c;量子计算技术犹如一颗璀璨新星&#xff0c;正以惊人的速度改写着人类的计算格局。这一颠覆性的技术&#xff0c;为人工智能&#xff08;AI&#xff09;领域带来了前所未有的发展契机&#xff0c;尤其是在处理海量数据方面&#xff0c;展现出传…...

【够用就好006】如何从零开发游戏上架steam面向AI编程的godot独立游戏制作实录001流程

记录工作实践 这是全新的系列&#xff0c;一直有个游戏制作梦 感谢AI时代&#xff0c;让这一切变得可行 长欢迎共同见证&#xff0c;期更新&#xff0c;欢迎保持关注&#xff0c;待到游戏上架那一天&#xff0c;一起玩 面向AI编程的godot独立游戏制作流程实录001 本期是第…...

LNK2038 检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticRelease”不匹配值“MD_DynamicRelease”

vs2019中属性设置 报错&#xff1a; vs2019中属性设置为 报错&#xff1a; 设置为 报错&#xff1a; 设置为 报错&#xff1a; 原因&#xff1a;是由于ncnn和paddleLite的库同时使用会冲突。只能用其中之一。 后面部署降lite都换成了ncnn就可以了。 要么都用ncnn&a…...

docker-compose部署mongodb副本集集群

生成密钥文件 ​ openssl rand -base64 756 > mongodb.key chmod 400 mongodb.key # 权限必须为400‌:ml-citation{ref="4" data="citationList"} chown 999:999 mongodb.key # MongoDB容器用户ID为999‌:ml-citation{ref="4" data="…...

SpringBoot校园管理系统设计与实现

在现代校园管理中&#xff0c;一个高效、灵活的管理系统是不可或缺的。本文将详细介绍基于SpringBoot的校园管理系统的设计与实现&#xff0c;涵盖管理员、用户和院校管理员三大功能模块&#xff0c;以及系统的部署步骤和数据库配置。 管理员功能模块 管理员是系统的核心管理…...

[QT]开发全解析:从概念到实战

文章目录 Qt 框架入门与应用开发指南一、Qt 框架概述1.1 什么是 Qt1.2 Qt 的发展史1.3 Qt 支持的平台1.4 Qt 版本1.5 Qt 的优点1.6 Qt 的应用场景1.7 Qt 的成功案例 二、Qt 的开发工具概述Qt CreatorVisual StudioEclipse 三、认识 Qt Creator3.1 Qt Creator 概览3.2 使用 Qt C…...

【pyqt】(十二)文本框

控件-文本框 文本框主要有两类&#xff0c;为富文本框(QTextEdit)和纯文本框(QPlainTextEdit)&#xff0c;在学习新的控件的时候&#xff0c; 需要掌握的内容主要除了属性之外&#xff0c;其信号触发方法也非常重要。还可以利用Designer来辅助我们进行学习&#xff0c;尤其是利…...

汽车免拆诊断案例 | 2023款丰田雷凌汽油版车行驶中偶尔出现通信故障

故障现象  一辆2023款丰田雷凌汽油版车&#xff0c;搭载1.5 L发动机&#xff0c;累计行驶里程约为4700 km。车主反映&#xff0c;行驶中偶尔组合仪表上的发动机转速信号丢失&#xff0c;转向变重&#xff0c;且有“闯车”感&#xff0c;同时车辆故障警报蜂鸣器鸣响。 故障诊断…...

关于OceanBase与CDH适配的经验分享

CDH是Cloudera早期推出的一个开源平台版本&#xff0c;它实质上成为了Apache Hadoop生态系统内公认的安装与管理平台&#xff0c;专为企业级需求量身打造。CDH为用户提供了即装即用的企业级解决方案。通过整合Hadoop与另外十多项关键开源项目&#xff0c;Cloudera构建了一个功能…...

基于国产芯片的AI引擎技术,打造更安全的算力生态 | 京东零售技术实践

近年来&#xff0c;随着国产AI芯片的日益崛起&#xff0c;基于国产AI芯片的模型适配、性能优化以及应用落地是国产AI应用的一道重要关卡。如何在复杂的京东零售业务场景下更好地使用国产AI芯片&#xff0c;并保障算力安全&#xff0c;是目前亟需解决的问题。对此&#xff0c;京…...

第五十四:渲染数据 v-text 和 v-html

v-text : 解析成文本 v-html: 解析成 html <div id"app"><h3>{{ web.title }}</h3><!-- v-text 将数据解析为纯文本格式 --><h3 v-text"web.title"></h3><!-- v-html 将数据解析为 html 格式 --><h3 v-htm…...

HTML label 标签使用

点击 <label> 标签通常会使与之关联的表单控件获得焦点或被激活。 通过正确使用 <label> 标签&#xff0c;可以使表单更加友好和易于使用&#xff0c;同时提高整体的可访问性。 基本用法 <label> 标签通过 for 属性与 id 为 username 的 <input> 元素…...

GB28181开发--ZLMediaKit‌+WVP+Jessibuca‌

一、核心组件功能 1‌、ZLMediaKit‌ 定位‌:基于 C++11 的高性能流媒体服务框架,支持 RTSP/RTMP/HLS/HTTP-FLV 等协议互转,具备低延迟(最低 100ms)、高并发(单机 10W 级连接)特性,适用于商用级流媒体服务器部署‌。 ‌特性‌:跨平台(Linux/Windows/ARM 等)、支持 …...

Linux和gcc/g++常用命令总结

目录 Linux命令总结 文件操作相关命令 ls cd pwd cp mv rm cat mkdir rmdir touch 文本处理操作命令 grep awk sed 进程管理操作相关命令 ps top htop kill pkill killall chmod chown 网络操作相关命令 ping ifconfig netstat ss lsof curl …...

Sqoop从入门到使用

安装和配置 修改文件配置&#xff1a;修改文件名将&#xff08;sqoop-env-template.sh改为sqoop-env.sh&#xff09; 编辑sqoop-env.sh内部文本&#xff0c;修改调用文件位置 将sqoop-env.sh&#xff0c;配置到全局变量中&#xff0c;方便调用。 查看正常运用 第一类&#xff1…...

2024华为OD机试真题-磁盘容量排序算法(C++)-E卷B卷-100分

2024华为OD机试题库-(E卷+C卷+D卷)-(JAVA、Python、C++) 目录 题目描述 输入描述 输出描述 用例1 用例2 考点 题目解析 代码 c++ 题目描述 磁盘的容量单位常用的有 M,G,T 这三个等级,它们之间的换算关系为: 1T = 1024G 1G = 1024M 现在给定 n 块磁盘的容量,…...

【数据结构】堆(挑战从零基础到进阶)

我们从概念开始一步步来学习堆&#xff0c;下面我们来从零基础来解剖该种数据结构。先提前透明&#xff1a;实现堆其实就是基于数组来实现一个完全二叉树而已 &#xff01; 目录 堆的概念 堆的性质 堆的物理逻辑&思维逻辑 堆的节点对应关系 堆的核心操作 &#xff08…...

阿里 DataWorks:数据治理、安全中心、数据质量核心功能梳理

文章目录 阿里 DataWorks&#xff1a;云原生数据治理与安全一体化实践指南一、数据治理中心1.1 数据治理体系1.2 产品架构全图1.3 概要使用路径1.4 治理现状评估数据治理健康分评估模型 1.5 检查项 & 治理项(1) 检查项(2) 治理项 1.6 治理工具箱1.7 治理结果查看 二、安全中…...