Gehpi的网络布局
Gehpi的网络布局
- 1. 力引导布局
- 2. 辅助布局
布局是网络可视化中的重要概念,指将点和边通过某种策略进行排布,应尽可能满足以下4个原则:
- 节点均匀分布在有限的区域内
- 避免边的交叉和弯曲
- 保持边的长度一致
- 整体布局能反映图内在的特性
Gephi的布局模块(Layout)可根据某种策略对节点和边进行排布,使图形既具有特定需要的合理性,也易于视觉识别。布局算法是Gephi的核心,默认提供12种布局算法,可分为两类:力引导布局、辅助编调整布局。
1. 力引导布局
力引导布局通过能够模仿物理世界中的引力和斥力,将图中的节点模拟成原子,通过模拟原子间的力场来计算节点间的位置关系,使系统最终进入一种动态平衡
Gephi的力引导布局有6种,即Force Atlas、Force Atlas 2、Fruchterman Reingold、OpenOrd、Yifan Hu、Yifan Hu Proportional。
(1)Force Atlas
Force Atlas布局使图更紧凑、可读性强。主要参数如下:
- Inertia(惯性):值愈大,图的摇摆幅度越大。
- Repulsion strength(斥力强度):每个节点排斥其他节点的强度,值越大,节点的距离越大。
- Attraction strength(吸引强度):连接节点之间的吸引力的强度,值越大,有连接的节点越被拉近。
- Gravity(重力):值越小,图越分散;值越大,图越压缩。
- Speed(速度):布局运动的速度,值越大,图的布局速度越快。
(2)Force Atlas 2
Force Atlas 2是改进的Force Atlas算法,速度更快。主要参数如下:
- Scaling(缩放):节点的斥力强度,值越大,斥力越大,图越稀疏。
- Stronger Gravity(更强的重力):一个已经定义好的较强的重力。
- Gravity(重力):自定义的重力值,可以比“更强的重力”更强。
- Dissuade Hubs(劝阻Hubs):只有输入的边会被推到边缘。
- LinLog模式:线性和对数模式的切换。
- Prevent Overlap(防止重叠):可以把重叠的节点展开。
- Tolerance(Speed)/容差(速度):布局速度的选取,较小的数值速度较慢,但精度更高。
(3)Fruchterman Reingold
Fruchterman Reingold简称FR,FR布局基于再次改进的弹性模型,该布局算法遵循两个简单的原则,即有连接的节点互相靠近和无连接的节点互相排斥。主要参数如下:
- Area(区):定义图形的幅度,值越大图越大,也越稀疏。
- Gravity(重力):定义重力值,值越大重力越强,节点越被中心吸引。
- Speed(速度):定义布局的速度,值越大布局速度越快,但也越不精确。
(4)OpenOrd
OpenOrd布局是一种新的力引导布局,支持多核、并行。OpenOrd布局的Stages(阶段)分为Liquid(液体)、Expansion(扩张)、Cooldown(冷却)、Crunch(紧缩)和Simmer(煨)5个过程,适合处理节点较多的图;对于节点较少的图形,运行起来效果并不是很好。
(5)Yifan Hu
Yifan Hu布局也是力引导布局的改进版,由胡一凡在2005年提出,在多层级力引导算法中引入了超节点的概念。该布局算法中,将一个节点与它远处一簇节点之间的斥力当作此节点与一个超节点间的斥力来计算,从而大大减少了计算量,使得总计算复杂度下降,可处理几十万个节点规模的图。主要参数如下:
- Optimal Distance(最佳距离):值越大,整个图的尺寸越大。
- Relative Strength(相对强度):值越大,节点越稀疏;值越小,节点越紧密。
(6)Yifan Hu Proportional
Yifan Hu比例布局的参数与Yifan Hu布局的参数相同,实际上这两个布局所起到的作用是相同的,扩展(收缩布局的参数只有比例因子,比例因子的设置方法如下:
- 如果比例因子为1,那么图不会放大也不会缩小。
- 如果比例因子大于1,那么图会放大,且值越大,放大的比例越大。
- 如果比例因子小于1,那么图会缩小,且值越小,缩小的比例越大。
- 如果比例因子为负数,那么在放大或缩小的同时,也会从上下、左右两个方面颠倒图形。
2. 辅助布局
辅助布局是根据某种预先定义的规则对图进行布局,辅助布局有6种,Noverlap、Rotate、Contraction、Expansion、标签调整、随机布局。
(1)Noverlap
Noverlap(交叠布局)可以防止参数的重,Noverlap布局中不考虑标签的重叠。。主要参数如下:
- speed(速度):布局速度。一般都是速度越快,布局越差
- ratio(节点边距) :间距为1的时候,节点会连在一起,随着间距增大,节点变的越来越分开。当简间距小于1的时候,允许节点重叠。
- margin(幅度):增加幅度半径。当幅度为0的时候,没有余量;幅度增大节点分离越大,负的幅度的时候允许重叠。
(2)Rotate
Rotate布局很简单,其可以将图形从整体上进行顺时针或者逆时针的旋转,从而进行布局。唯一的参数是Angle(旋转角度,旋转角度可以是正的,也可以是负的值。
(3)Contraction(Expansion
Expansion(扩展)、Contraction(收缩)布局是对原始图的按照比例的扩展和收缩,两者唯一的参数是Scale factor(因子。
Scale factor取值有以下几种情况:
- 因子=1,不扩展,不收缩。
- 因子>1,扩展,值越大,扩展越大。
- 因子<1,收缩,值越小,越收缩。
- 因子为负数: 在扩展和收缩的同时,进行图形的颠倒。
(4)Label Adjust
Label Adjust(标签调整)布局主要可以防止标签的重叠,参数包括Speed(速度,决定了布局的速度;Include Node size(包括节点大小):是否使得重叠的节点分散。
(5) Random Layo
Random Layout(随机布局)在一个Space size(空间大小的参数)上进行随机的布局。
相关文章:

Gehpi的网络布局
Gehpi的网络布局1. 力引导布局2. 辅助布局布局是网络可视化中的重要概念,指将点和边通过某种策略进行排布,应尽可能满足以下4个原则: 节点均匀分布在有限的区域内避免边的交叉和弯曲保持边的长度一致整体布局能反映图内在的特性 Gephi的布局…...

华为OD机试用Python实现 -【天然蓄水库 or 天然蓄水池】(2023-Q1 新题)
华为OD机试题 华为OD机试300题大纲天然蓄水库 or 天然蓄水池题目描述输入描述输出描述说明示例一输入输出说明示例二输入输出说明示例三输入输出说明Python 代码实现算法思路华为OD机试300题大纲 参加华为...

西北工业大学大学物理(I)下期末考试2021-2022选填解析
11 告诉你n2了,那么l0或者1,后续限制类推。2 几乎每年都出。散射波波长的偏移只与散射角有关。3 产生激光的条件。先认识到激光就是受激幅射光放大。受激辐射是产生激光的必要条件,粒子数偏转是产生激光的必要条件,谐振腔也需要。…...

【数据结构】手撕红黑树
目录 一、红黑树简介 1、红黑树的简介 2、红黑树的性质 二、红黑树的插入(看叔叔的颜色就行) 1、为什么新插入的节点必须给红色? 2、插入红色节点后,判定红黑树性质是否被破坏 2.1情况一:uncle存在且为红 2.2情…...

Linux基础命令-which查找命令文件位置
文章目录 which 命令功能 语法格式 基本参数 参考实例 1)查找chmod命令的文件位置 2)查找chmod命令的所有路径 3)一次性查找多个命令路径 4)组合其他命令一起使用 5)显示命令的版本信息 命令总结 which 命…...
在Python中,导入拓展库的规范如下:
在Python中,导入拓展库的规范如下: Import 模块名 [as 别名] from 模块名Import 对象名 [as 别名] from 模块名 import * 1.导入标准库和第三方库的方式应该不同 Python标准库已经默认安装在Python解释器中,因此在导入标准库时不需要…...

SEATA是什么?它的四种分布式事务模式
一、SEATA是什么? Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。 在继续学习使用SEATA之前,对s…...

【华为OD机试模拟题】用 C++ 实现 - 去重求和(2023.Q1)
最近更新的博客 【华为OD机试模拟题】用 C++ 实现 - 获得完美走位(2023.Q1) 文章目录 最近更新的博客使用说明去重求和题目输入输出示例一输入输出说明示例一输入输出说明Code使用说明 参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。…...

如何用 chatGPT,给大家来一个自我介绍
大家好,我是不吃西红柿的无线机械键盘,我的名字叫 Keychron K3 Pro。今天,我通过西红柿主人的手,使用 chatGPT 来介绍一下我自己。我的与众不同 我是由精密机械元件制作而成,并采用抗键渗设计,以提供更快、…...

进程管理之基本概念
目录 关于进程的基本概念 进程描述符 查看进程 进程标识 进程的生命周期 僵尸进程、孤儿进程 写时拷贝技术 fork()函数 vfork()函数 终止进程 进程优先级和权重 进程地址空间 关于进程的基本概念 进程和程序是操作系统领域的两个重要的概念,进程是执行…...

nginx安装部署实战手册
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录一、虚拟机安装nginx1.下载安装包2.安装编译工具和库文件3.编译安装4.启动nginx5.访问首页6.开机自启结尾一、虚拟机安装nginx 1.下载安装包 官网下载地址…...
XXL-JOB任务调度平台
什么是xxl-job? xxl-job是一个分布式的任务调度平台,其核心设计目标是:学习简单、开发迅速、轻量级、易扩展,现在已经开放源代码并接入多家公司的线上产品线,开箱即用。xxl是xxl-job的开发者大众点评的许雪里名称的拼…...

android UI优化的基本原理和实战方法
任何Android应用都需要UI跟用户交互.UI是否好坏更是直接影响到用户的体验.如今UI的优化视乎是应用开发中一个绕不过去的话题。所以本篇文章小编带大家全面了解Android ui优化的主要知识和优化方法。 一、UI优化 UI优化知识点主要分为三部分: 第一部分,…...

指针的进阶【中篇】
文章目录📀4.数组参数💿4.1.一维数组传参💿4.2.二维数组传参📀5.指针参数💿5.1.一级指针传参💿5.2.二级指针传参📀6.函数指针💿6.1. 代码1💿6.2. 代码2📀7.函…...

华为OD机试题,用 Java 解【删除字符串中出现次数最少的字符】问题
最近更新的博客 华为OD机试 - 猴子爬山 | 机试题算法思路 【2023】华为OD机试 - 分糖果(Java) | 机试题算法思路 【2023】华为OD机试 - 非严格递增连续数字序列 | 机试题算法思路 【2023】华为OD机试 - 消消乐游戏(Java) | 机试题算法思路 【2023】华为OD机试 - 组成最大数…...

【C语言每日一题】猜名次
【C语言每日一题】—— 猜名次😎😎😎 💡前言🌞: 💛猜名次题目💛 💪 解题思路的分享💪 😊题目源码的分享😊 👉 本菜鸡…...

89. 格雷编码
89. 格雷编码题目数学公式动态规划回溯题目 传送门:https://leetcode.cn/problems/gray-code/ 数学公式 int gray(int n) { // 计算第n位格雷码公式return n ^ (n >> 1); }然后你写一个for循环,计算从1到n的所有格雷码,添加到答…...

线性回归算法和逻辑斯谛回归算法详细介绍及其原理详解
相关文章 K近邻算法和KD树详细介绍及其原理详解朴素贝叶斯算法和拉普拉斯平滑详细介绍及其原理详解决策树算法和CART决策树算法详细介绍及其原理详解线性回归算法和逻辑斯谛回归算法详细介绍及其原理详解 文章目录相关文章前言一、线性回归二、逻辑斯谛回归总结前言 今天给大家…...

【网络原理8】HTTP请求篇
在上一篇文章当中,我们也提到了什么是HTTP。 每一个HTTP请求,都会对应一个HTTP响应。 下面这一篇文章,将聊一下HTTP请求的一些内容 目录 一、URL 第一部分:协议名称 第二部分:认证信息(新的版本已经没有了) 第三部分…...

Playbook的用法
目录 Playbook Playbook 与 Ad-Hoc 对比 YAML 语言特性 YAML语法简介 支持的数据类型 写法格式 1 scalar 标量 建议缩进两个空格,可多 2 Dictionary 字典 3 List 列表 三种常见的数据格式 Playbook 核心组件 不要用 tab 可以#注释 hosts remote_us…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

2021-03-15 iview一些问题
1.iview 在使用tree组件时,发现没有set类的方法,只有get,那么要改变tree值,只能遍历treeData,递归修改treeData的checked,发现无法更改,原因在于check模式下,子元素的勾选状态跟父节…...

Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...
Rapidio门铃消息FIFO溢出机制
关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系,以下是深入解析: 门铃FIFO溢出的本质 在RapidIO系统中,门铃消息FIFO是硬件控制器内部的缓冲区,用于临时存储接收到的门铃消息(Doorbell Message)。…...

【Redis】笔记|第8节|大厂高并发缓存架构实战与优化
缓存架构 代码结构 代码详情 功能点: 多级缓存,先查本地缓存,再查Redis,最后才查数据库热点数据重建逻辑使用分布式锁,二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...

【Linux】Linux 系统默认的目录及作用说明
博主介绍:✌全网粉丝23W,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物…...
PostgreSQL——环境搭建
一、Linux # 安装 PostgreSQL 15 仓库 sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-$(rpm -E %{rhel})-x86_64/pgdg-redhat-repo-latest.noarch.rpm# 安装之前先确认是否已经存在PostgreSQL rpm -qa | grep postgres# 如果存在࿰…...