基于乐吾乐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依赖库,读者需要注意相关库的版本问题,尽量与我保持一致,在下一章我们将讲解基本的界面布局,下章见。

相关推荐
柳杉2 天前
使用Ai从零开发智慧水利态势感知大屏(开源)
前端·javascript·数据可视化
ANQH4 天前
Manim三大核心类详解
数据可视化
柳杉7 天前
使用AI从零打造炫酷医疗数据可视化大屏,源码免费拿!
前端·javascript·数据可视化
Highcharts.js7 天前
Highcharts热力图(Heatmap)完全指南:从基础配置到地理热力图,一文学会颜色轴数据可视化
信息可视化·数据可视化·热力图·heatmap·highcharts·地理热力图
凌云拓界8 天前
TypeWell全攻略(二):热力图渲染引擎,让键盘发光
前端·后端·python·计算机外设·交互·pyqt·数据可视化
柳杉9 天前
使用AI从零打造炫酷的智慧城市大屏(开源):React + Recharts 实战分享
前端·javascript·数据可视化
凌云拓界9 天前
TypeWell全攻略:AI健康教练+实时热力图开发实战 引言
前端·人工智能·后端·python·交互·pyqt·数据可视化
谁不学习揍谁!9 天前
基于python大数据机器学习旅游数据分析可视化推荐系统(完整系统+开发文档+部署教程+文档等资料)
大数据·python·算法·机器学习·数据分析·旅游·数据可视化
-To be number.wan12 天前
用 Pandas 分析自行车租赁数据:从时间序列到天气影响的完整实训
python·数据分析·pandas·数据可视化
Sleep`12 天前
基于Suricata与ELK的网络流量检测
elk·数据可视化·suricata·流量