AntV G6 初入门(react中的使用)

一.G6文档链接

AntV G6
经官网介绍,G6内部绝大多数都是基于 React 技术栈的,所以官方也仅提供一个 G6 在 React 中使用的 Demo。

在 React 中使用 G6,和在 HTML 中使用基本相同,唯一比较关键的区分就是在实例化 Graph 时,要保证 DOM 容器渲染完成,并能获取到 DOM 元素。

二.使用步骤

(1).下载

npm install --save @antv/g6

(2).在js文件中引入

import G6 from '@antv/g6';

(3).使用方式
首先,我们来了解一下G6的核心概念
在这插入图片描述

需要具备以下几点之后才可以开始进行画图
a.创建容器
b.数据准备
c.创建关系图
d.配置数据源,渲染

import React from "react";

import G6 from '@antv/g6';

 // 定义数据源
 const data = {
    // 点集
    nodes: [
       {
        id: 'node1',
        x: 100,
        y: 200,
        label: '起始点', // 节点文本
      },
      {
        id: 'node2',
        x: 300,
        y: 200,
        label: '目标点1', // 节点文本
      },
      {
        id: 'node3',
        x: 400,
        y: 200,
        label: '目标点2', // 节点文本
      },
    ],
    // 边集
    edges: [
      // 表示一条从 node1 节点连接到 node2 节点的边
      {
        source: 'node1',
        target: 'node2',
        label: '我是连线1', // 边的文本
      },
      {
        source: 'node2',
        target: 'node3',
        label: '我是连线2', // 边的文本
      },
    ],
  };
export default class Treeg extends React.Component {
    constructor(){
        super()
        
    }
   
    componentDidMount(){
        // 创建 G6 图实例
      const graph = new G6.Graph({
        container: 'mountNode', // 指定图画布的容器 id,与第 9 行的容器对应
        // 画布宽高
        width: 800,
        height: 500,
        fitView: true,//超出适配
 		fitViewPadding: [20, 40, 50, 20],//页面留白宽度
      });
      // 读取数据
      graph.data(data);
      // 渲染图
      graph.render();
    }

    render(){
        return(
            <div id="mountNode" ref={this.getContainer}>

            </div>
        )
    }
    
}

在需要展示的页面进行相应的引入即可使用
页面展示:
在这里插入图片描述
常用配置项如下:

配置项类型选项 / 示例默认说明
fitViewBooleantrue / falsefalse是否将图适配到画布大小,可以防止超出画布或留白太多。
fitViewPaddingNumber / Array20 / [ 20, 40, 50, 20 ]0画布上的四周留白宽度。
animateBooleantrue / falsefalse是否启用图的动画。
modesObject{default: [ ‘drag-node’, ‘drag-canvas’ ]}null图上行为模式的集合。
defaultNodeObject{type: ‘circle’,color: ‘#000’,style: { …}}null节点默认的属性,包括节点的一般属性和样式属性(style)。
defaultEdgeObject{type: ‘polyline’, color: ‘#000’,style: {…}}null边默认的属性,包括边的一般属性和样式属性(style)。
nodeStateStylesObject{ hover: { …},select: {…}null节点在除默认状态外,其他状态下的样式属性(style)。例如鼠标放置(hover)、选中(select)等状态
edgeStateStylesObject{ hover: { …},select: {…}null边在除默认状态外,其他状态下的样式属性(style)。例如鼠标放置(hover)、选中(select)等状态。
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值