基于乐吾乐meta2d从零实现可视化流程图编辑器(一)

概要

可视化编辑器已成为前端发展趋势,相关产品层出不穷,但是用户很难根据自身需求完整实现一个可用的可视化编辑器,我将采用乐吾乐开源的meta2d.js可视化库来实现一个简单的流程图编辑器,通过这个案例来介绍meta2d的相关功能,并向读者展示如何用meta2d从零出发搭建一个较为完整的项目,让我们在实际项目中来体验meta2d的强大之处吧。

什么是乐吾乐meta2d.js

meta2d是乐吾乐开源的2D图元组成的可视化引擎,集实时数据展示、动态交互、数据管理等一体的全功能2D可视化引擎。能够快速实现数字孪生、大屏可视化、Web组态、SCADA等解决方案。具有实时监控、多样、变化、动态交互、高效、可扩展、支持自动算法、跨平台等特点,最大程度减少研发和运维的成本,并致力于普通业务人员 0 代码开发实现物联网、工业互联网、电力能源、水利工程、智慧农业、智慧医疗、智慧城市等可视化解决方案。

乐吾乐 meta2d开源项目地址:github.com/le5le-com/m...

乐吾乐 meta2d官方文档:doc.le5le.com/document/11...

可视化流程图编辑器项目地址:github.com/Grnetsky/me...

1. 环境搭建

技术栈

在技术选型中结合个人喜好和项目实际需求,作者选择vue3+vite+ElementUIplus技术栈

由于在未来相关库会进行更新迭代,作者无法保证此教程在未来依然有效,为了保证此教程的可用性,建议读者版本与我保持一致,本项目相关依赖库的版本如下所示:

perl 复制代码
{
  "name": "meta2d_vue",
  "private": true,
  "version": "1.0.0",
  "type": "module",
  "scripts": {
    "dev": "vite",
    "build": "vite build",
    "preview": "vite preview"
  },
  "author": {
    "name": "DrieckyCay",
    "email": "1101767893@qq.com"
  },
  "postinstall": "node ./src/test.js",
  "dependencies": {
    "@meta2d/activity-diagram": "^1.0.0",
    "@meta2d/chart-diagram": "^1.0.3",
    "@meta2d/class-diagram": "^1.0.1",
    "@meta2d/core": "^1.0.20",
    "@meta2d/flow-diagram": "^1.0.0",
    "@meta2d/form-diagram": "^1.0.4",
    "@meta2d/sequence-diagram": "^1.0.0",
    "@meta2d/svg": "^1.0.2",
    "axios": "^1.4.0",
    "element-plus": "^2.3.7",
    "vue": "^3.3.4"
  },
  "devDependencies": {
    "@vitejs/plugin-vue": "^4.2.3",
    "vite": "^4.4.0"
  }
}

vite创建项目

通过 npm create vite@latest 命令进行项目搭建,选择对应的技术栈

通过npm run dev 命令 显示默认主页证明安装成功

安装Meta2d核心库

通过下面命令安装最新版核心库(截止发布前v1.0.20)

javascript 复制代码
npm install @meta2d/core --save

安装核心库svg解析模块

在很多时候我们的图标都是采用svg格式进行解析渲染的,在此下载乐吾乐提供的@meta2d/svg依赖包。该依赖包提供了一系列的meta2d依赖的svg解析函数,我们可以在项目中导入解析svg图形。

sql 复制代码
npm install @meta2d/svg  --save

安装成功

安装ELement Plus库

在本项目中,我们的UI组件将采用组件化库,根据自己喜好,作者在这里采用Element Plus作为项目的ui库 安装如下:

css 复制代码
npm install element-plus --save


安装成功

导入配置:由于本教程更偏向于项目的搭建和核心库的使用,并不关心项目实际大小,为了方便起见,将采用ElementPlus全局导入的形式

将默认模板进行删除整理,在components文件夹中创建Nav.vue、Meta2d.vue、Icons.vue、Setting.vue、Main.vue五个空文件,在App.vue根组件中按照如图进行排列,到此基本开发环境搭建就完成了。

总结

这一章我们完成了基本的环境搭建,作者在技术选型上选择了Vue+Vite+ElemetPlus,同时安装了meta2d核心库和meta2d/svg依赖库,读者需要注意相关库的版本问题,尽量与我保持一致,在下一章我们将讲解基本的界面布局,下章见。

相关推荐
Lx35213 小时前
成了!不会前端,花一天时间给公司 BI 系统装上了 AI 智能体!
数据分析·agent·数据可视化
航鑫光电4 天前
Canvas 手写实时波形图:一套通用的传感器数据可视化方案
数据可视化
尘中远4 天前
【Qwt 7.0 系列】快速入门与核心新特性概览 —— 更现代的 Qt 数据可视化库
qt·数据可视化·绘图·qwt·科学绘图
柳杉4 天前
别再手写大屏了!用这套「3D 地图 + 拖拽脚手架」示例源码,交付效率提升 80%
前端·three.js·数据可视化
尘中远4 天前
【Qwt 7.0 系列】坐标轴与刻度系统 —— 刻度引擎、网格、图例与刻度朝内
qt·数据可视化·qcustomplot·qwt·工业软件·科学绘图
尘中远5 天前
【Qwt 7.0 系列】交互功能详解 —— 平移、缩放、坐标轴交互与数据拾取
qt·数据可视化·绘图·qcustomplot·qwt·科学绘图
尘中远5 天前
【Qwt 7.0 系列】高级科学图表 —— 光谱图、向量场、K线图与极坐标绘图
qt·数据可视化·qwt·工业软件·科学绘图·云图·向量场
江华森6 天前
数据可视化实战:从 seaborn 到 pyecharts 的 7 个动手实验
python·数据可视化
柳杉9 天前
可视化大屏设计器脚手架:从设计到交付的一站式方案
前端·three.js·数据可视化
ZhengEnCi11 天前
P2M-Matplotlib折线图完全指南-从数据可视化到趋势分析的Python绘图利器
python·matlab·数据可视化