为辅助用户在图上探索,G6 提供了一些辅助工具,其中一部分是插件工具,另一部分是交互工具。

本文将为 Tutorial 案例 添加缩略图插件、网格插件、节点提示框、边提示框。

插件

使用插件时,有三个步骤:

  1. 引入插件;
  2. 实例化插件;
  3. 在实例化图时将插件的实例配置到图上。

Minimap

缩略图 (Minimap) 是一种常见的用于快速预览和探索图的工具,可作为导航辅助用户探索大规模图。


现在,我们为 Tutorial 案例 配置一个 Minimap:

预期效果

使用方法

Minimap 是 G6 的插件之一,引入 G6 后可以直接使用。实例化 Minimap 对象,并将其配置到图实例的插件列表里即可:

// 实例化 minimap 插件
const minimap = new G6.Minimap({size: [100, 100],className: 'minimap',type: 'delegate',
});// 实例化图
const graph = new G6.Graph({// ...                           // 其他配置项plugins: [minimap], // 将 minimap 实例配置到图上
});

Grid 网格

网格可用于辅助用户在拖拽节点时对齐到网格。

预期效果

使用方法 实例化插件和配置插件到图上:

// const minimap = ...// 实例化 grid 插件
const grid = new G6.Grid();// 实例化图
const graph = new G6.Graph({// ...                        // 其他配置项plugins: [minimap, grid], // 将 grid 实例配置到图上
});

交互工具

交互工具是指配置到图上交互模式中的工具。使用交互工具时,有两个步骤:

  1. 在实例化图时配置 modes;
  2. 为交互工具定义样式。

tooltip 节点提示框

节点提示框可以用在边的详细信息的展示。当鼠标滑过节点时,显示一个浮层告知节点的详细信息。

预期效果

使用方法

实例化图时配置 ‘tooltip’ 到 modes 中:

const graph = new G6.Graph({modes: {default: [// ...{type: 'tooltip', // 提示框formatText(model) {// 提示框文本内容const text = 'label: ' + model.label + '<br/> class: ' + model.class;return text;},},],},
});

由于 tooltip 实际上是一个悬浮的 <div> 标签,因此可在 HTML 的 <style> 标签或 CSS 中设置样式。下面展示在 HTML 中设置样式:

<head><meta charset="UTF-8" /><title>Tutorial Demo</title><style>/* 提示框的样式 */.g6-tooltip {border: 1px solid #e2e2e2;border-radius: 4px;font-size: 12px;color: #545454;background-color: rgba(255, 255, 255, 0.9);padding: 10px 8px;box-shadow: rgb(174, 174, 174) 0px 0px 10px;}</style>
</head>

edge-tooltip 边提示框

边提示框可以用在边的详细信息的展示。当鼠标滑过边时,显示一个浮层告知边的详细信息。

预期效果


使用方法

const graph = new G6.Graph({modes: {default: [// ...{type: 'tooltip', // 节点提示框// ...},{type: 'edge-tooltip', // 边提示框formatText(model) {// 边提示框文本内容const text ='source: ' +model.source +'<br/> target: ' +model.target +'<br/> weight: ' +model.weight;return text;},},],},
});

与 tooltip 相同,edge-tooltip 是一个悬浮的

标签,可以使用与 tooltip 相同的方法设置其悬浮框的样式。

完整代码

至此,Tutorial 案例 完成,完整代码见:Tutorial 案例代码。

G6 图可视化引擎——入门教程——插件与工具相关推荐

  1. G6 图可视化引擎——入门教程——前言

    什么是 G6 G6 是一个图可视化引擎.它提供了图的绘制.布局.分析.交互.动画等基础的图可视化能力.旨在让关系变得透明,简单.让用户获得关系数据的 Insight. 入门教程简介 我们在本入门教程中 ...

  2. G6 图可视化引擎——入门教程——绘制 Tutorial 案例

    本文将进行 Tutorial 案例的简单绘制和配置.通过本文,你将知道创建一般图时一些常用的配置项及其作用. 基础绘制 创建容器 需要在 HTML 中创建一个用于容纳 G6 绘制的图的容器,通常为 d ...

  3. G6 图可视化引擎——入门教程——使用图布局 Layout

    当数据中没有节点位置信息,或者数据中的位置信息不满足需求时,需要借助一些布局算法对图进行布局.G6 提供了 9 种一般图的布局和 4 种树图的布局: 一般图: Random Layout:随机布局: ...

  4. G6 图可视化引擎——入门教程——动画

    由于动画机制较为复杂,我们未在 Tutorial-案例 中增加动画. G6 的动画分为两个层次: 图全局动画:图整体变化时的动画过渡: 元素动画:节点和边的动画效果. 全局动画 G6 的全局动画指通过 ...

  5. G6 图可视化引擎——入门教程——图的交互 Behavior

    G6 封装了一系列交互方法,方便用户直接使用.本文将为 Tutorial 案例 增加简单的交互:hover 节点.点击节点.点击边.放缩画布.拖拽画布.本节目标效果如下: 基本概念 交互行为 Beha ...

  6. G6 图可视化引擎——入门教程——元素及其配置

    图的元素特指图上的节点 Node 和边 Edge .在上一章节中,我们已经将 Tutorial 案例的图绘制了出来,但是各个元素及其 label 在视觉上很简陋.本文通过将上一章节中简陋的元素美化成如 ...

  7. G6 图可视化引擎——简介

    什么是 G6 G6 是一个图可视化引擎.它提供了图的绘制.布局.分析.交互.动画等图可视化的基础能力.旨在让关系变得透明,简单.让用户获得关系数据的 Insight. 基于 G6,用户可以快速搭建自己 ...

  8. G6图可视化引擎 v4.1.7

    介绍: G6 是一个图可视化引擎.它提供了图的绘制.布局.分析.交互.动画等图可视化的基础能力.旨在让关系变得透明,简单.让用户获得关系数据的 Insight. 基于 G6,用户可以快速搭建自己的 图 ...

  9. G6 图可视化引擎——核心概念——节点/边/Combo——内置节点——内置节点总览

    G6 的内置节点包括 circle,rect,ellipse,diamond,triangle,star,image,modelRect.这些内置节点的默认样式分别如下图所示. 本文将概述 G6 中的 ...

最新文章

  1. UA MATH571B 试验设计 QE练习题 平衡非完全区组设计BIBD
  2. uniapp动态显示数组_uni-app学习:4、数据绑定(变量、数组、显示控制)
  3. Vivado提高综合和实现的速度
  4. ios 计算两个时间相差秒数_Ios中时间差的计算,NSData与NSCalendar(日历)对象
  5. 计算机发展史评课议课稿,评课议课记录范文
  6. 营销型成人高考自考百度竞价推广落地页源码 单页织梦模板 带手机版
  7. java在线学习系统源码_java学习成长之路(基础,源码,项目,实战)
  8. Kotlin 循环控制(七)
  9. Uniswap 24h交易量约11亿美元涨10.66%
  10. 隐式反馈的去噪,模型取得巨大提升!
  11. AJAX 简单例程示例
  12. 全网首发 nuScenes数据集(百度网盘 + 迅雷网盘) + 下载方法
  13. 让vscode完美支持go vendor的代码跳转(使用vscode必看)
  14. 高级渗透之VBS调用WMI接口
  15. 微信小程序 - 修改 button 边框和背景色
  16. 有一个地方,叫做稻城
  17. Linux C语言 创建一个简单的守护进程
  18. 计算机叶老师,叶茫 - 教师简历 CV- 武汉大学计算机学院
  19. vulfocus复现:Log4j2远程命令执行2
  20. 通过事例重温一下常见的 JS 中 15 种数组操作(备忘清单)

热门文章

  1. 杂项-QRCode:ZXing
  2. ●(考试失误导致的)倍增总结
  3. 2016 CCPC 杭州站 小结
  4. 最简单的基于FFMPEG的Helloworld程序
  5. AutoComplete - 自动完成插件
  6. wpf控件提示Value ‘’ can not convert
  7. vi编辑器的学习使用(十三)
  8. Java的setmargin,Java Sheet.setMargin方法代碼示例
  9. java redis 没密码配置_如何解决redis的NOAUTH Authentication required异常
  10. 变频器端子阻抗3k_PLC与变频器连接问题分析