• antdVG6随记


    g6是一个很棒的可视化工具

    目前支持开发者搭建属于自己的图,图分析、图应用、图编辑器
    图编辑器可以支持多种图例的创建

    G6 是一个简单、易用、完备的图可视化引擎,它在高定制能力的基础上,提供了一系列设计优雅、便于使用的图可视化解决方案。能帮助开发者搭建属于自己的图 图分析 应用或是 图编辑器 应用

    最近一直在被G6可视化工具困扰,在逐渐摸索过程中,慢慢可以进行简单图例的搭建
    以下,根据react中如何使用G6来写这篇文章

    ----Go

    整体项目使用es6模块化开发

    首先下载G6
    npm install @antv/g6 --save

    import React from 'react';
    import G6 from '@antv/g6';
    
    class G6 extends React.Component {
        constructor(props) {
            super(props);
            this.state={
    
            };
        }
        componentDidMount() {
            // dom 已经渲染完成时加载图片, G6渲染依赖根节点
            this.renderG6();
        }
        renderG6 = () => {
            // 渲染图所需数据
            const data = {
                nodes: [{
                    id: 'node1',
                    shape: 'customNode',
                    x: 100,
                    y: 200
                },{
                    id: 'node2',
                    x: 300,
                    y: 200
                }],
                edges: [{
                    id: 'edge1',
                    target: 'node2',
                    source: 'node1'
                }]
            }; 
            // 初始化G6图
            const graph = new G6.Graph({
                container: 'mountNode',
                 600,
                height: 300
            });
            // Graph 是最基础的图类, G6 技术栈中所有关系图都是由该类负责绘制
            // 读数据
            graph.read(data);
        }
        render() {
            return (
                <div id="mountNode"></div>
            )
        }
    }
    
    

    自定义节点

        G6.registerNode('customNode', {
            draw(item){
                // draw 是图项最终绘制的接口, 可以拿到shape为customNode的所有数据
                const group = item.getGraphicGroup(); // 获取 G (图形库) 的图形图组
                const model = item.getModel();
                // 图形数据
                return group.addShape('rect', {
                    attrs: {
                        x: 0,
                        y: 0,
                         100,
                        height: 100,
                        stroke: 'red'
                    }
                    anchor: array || object || callback
                    <!-- anchor: [
                        [0.5, 1],     // 底边中点
                        [0.5, 0],     // 上边中点
                        [1, 0],     // 左边中点
                        [1, 0.5],     // 右边中点
                    ], -->
                    
                });
            }
    }, '基于某种图形进行绘制的类型');
    
    


    先下班。。。。。。

  • 相关阅读:
    20165306 Exp4 恶意代码分析
    20165306 Exp3 免杀原理与实践
    20165306 Exp2 后门原理与实践
    20165306 Exp1 PC平台逆向破解
    20165306 Exp0 Kali安装 Week1
    2018-2019-2 网络对抗技术 20165216 Exp9 Web安全基础
    2018-2019-2 网络对抗技术 20165216 Exp8 WEB基础
    2018-2019-2 网络对抗技术 20165216 Exp7 网络欺诈防范
    2018-2019-2 网络对抗技术 20165216 Exp6 Exp6 信息搜集与漏洞扫描
    2018-2019-2 网络对抗技术 20165216 Exp5 MSF基础应用
  • 原文地址:https://www.cnblogs.com/mxs-blog/p/9886192.html
Copyright © 2020-2023  润新知