基于G6的流程图绘制

最近项目中,有一个功能为流程图绘制,一开始是基于cavans进行绘制,但是由于绘制路线太多,计算点太多,额,然后费了好大劲,还是各种问题,最终放弃,选择基于g6重新进行了流程图绘制

  • 安装: npm install --save @antv/g6
  • 引用: import G6 from '@antv/g6'

简单demo

  • 这是官方的基础demo,可以看到流程图绘制,主要是对节点与边进行配置,并读取配置进行图像绘制
data() {
   
     return {
   
        nodes: [{
   
                id: 'node1',
                shape: 'rect',  
                x: 100,
                y: 200
              },{
   
                id: 'node2',
                x: 300,
                y: 200
              }],
        edges: [{
   
                id: 'edge1',
                target: 'node2',
                source: 'node1'
              }]
     }
 }

    methods: {
   
      init() {
   
        let graph = new G6.Graph({
   
          container: "flowChart",
          width: 1000,
          height: 300,
          fitView: 'cc',   // 初始化视口区域
          modes: {
   
            default: ['drag-canvas', 'zoom-canvas']   // 模式集:当前模式 可拖拽 可缩放
          }
        });
        let data = {
   
          nodes: this.nodes,
          edges: this.edges
        }
        graph.read(data);  // 读取并渲染图数据。  
      }
    }
  • 效果图如下:
    在这里插入图片描述

自定义节点与边进行流程图绘制

  • 下面是绘制流程图的初始化函数
import G6 from '@antv/g6';
export 
AntV G6 是一个基于 JavaScript 的流程图绘制工具,可以帮助用户快速绘制各种类型的流程图。使用 G6 绘制流程图的基本步骤如下: 1. 安装 G6 库 在终端中使用 npm 命令安装 G6 库:npm install @antv/g6。 2. 创建布 使用 G6 提供的 Graph 类创建一个布,示例代码如下: ```javascript import G6 from '@antv/g6'; const graph = new G6.Graph({ container: 'container', width: 800, height: 500, }); ``` 其中,container 参数指定布所在的容器,width 和 height 参数指定布的宽度和高度。 3. 创建节点和边 使用 G6 提供的 API 创建节点和边,示例代码如下: ```javascript graph.addNode('node1', { x: 100, y: 100, size: 50, label: 'Node 1', }); graph.addNode('node2', { x: 300, y: 100, size: 50, label: 'Node 2', }); graph.addEdge('edge1', { source: 'node1', target: 'node2', }); ``` 其中,addNode 方法用于创建节点,addEdge 方法用于创建边。节点和边的属性可以通过第二个参数传入。 4. 渲染布 使用 G6 提供的 render 方法渲染布,示例代码如下: ```javascript graph.render(); ``` 5. 绘制节点和边的样式 使用 CSS 样式表为节点和边设置样式,示例代码如下: ```css .g6-node { fill: #fff; stroke: #666; stroke-width: 1px; } .g6-edge { stroke: #666; stroke-width: 1px; } ``` 以上就是使用 AntV G6 绘制流程图的基本步骤。除了流程图G6 还支持绘制其他类型的图表,例如关系图、树形图等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值