利用networkx做固定坐标的样例图

2024-03-02 00:04
文章标签 坐标 固定 样例 networkx

本文主要是介绍利用networkx做固定坐标的样例图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

图技术

利用neo4j、networkx、dgl、python做图分析挖掘

【1】最短路径算法dijkstra
【2】基于networkx的隐性集团关系识别模型
【3】基于Neo4j的担保社群型态分析挖掘
【4】基于python求有向无环图中target到其他节点全路径
【5】有向图中任意两点的路径
【6】图基础入门
【7】知识图谱快速入门
【8】基于graphsage的欺诈用户风险识别
【9】Graph2NLP浅谈


利用networkx做固定坐标的样例图

  • 图技术
  • 前言
  • 一、构图代码
  • 二、结果图示

前言

作者的工作主要聚焦于图数据的研究和分析,研究过程中,需要绘制一些样例图,手工做出来的不够美观,因此利用networkx做出样例图,可以让例子更加美观直白,所以写下这篇文章用于备用。


一、构图代码

主要分为几部分:

  1. 构造节点,例子中构造了阿拉伯数字的7个节点,从0开始;
  2. 构造关系,例子中egdes中的每个元素edge表示一条关系,分别表示了关系走向和权重;
  3. 构造节点的位置,用于展示时固定位置;
  4. 画节点、画节点属性、画关系。

利用networkx进行构图,代码如下。

import networkx as nx
import matplotlib.pyplot as pltdef main():G = nx.DiGraph()# 添加对应的边和点for i in range(0, 8):# 结点名称不能为str,desc为标签即结点名称G.add_node(i, desc='N'+str(i))# 添加边,参数name为边权值edges = [[0, 1, 1], [1, 2, 1], [2, 3, 1], [3, 4, 1], [4, 5, 1], [5, 6, 1], [6, 7, 1], [7, 0, 1]]for edge in edges:G.add_edge(edge[0], edge[1], name=edge[2])pos = [(0, 0), (4, 0), (4, 5), (3, 8),  (3, 5),  (1, 5),  (1, 8),  (0, 5)]# 按pos所定位置画出节点,无标签无权值nx.draw_networkx(G, pos, with_labels=None, node_color="tab:blue", edge_color="tab:green", node_size = 800)# 画出标签node_labels = nx.get_node_attributes(G, 'desc')nx.draw_networkx_labels(G, pos, labels=node_labels)# 画出边权值edge_labels = nx.get_edge_attributes(G, 'name')nx.draw_networkx_edge_labels(G, pos, edge_labels=edge_labels)plt.title('fixed graph', fontsize=10)plt.show()
if __name__ == '__main__':main()

二、结果图示

  1. 通过node_size参数可以调整节点的大小;
  2. 通过node_color和edge_color可以分别调整节点和关系的颜色。
    图片展示

这篇关于利用networkx做固定坐标的样例图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/764279

相关文章

SW - 引入第三方dwg图纸后,修改坐标原点

文章目录 SW - 引入第三方dwg图纸后,修改坐标原点概述笔记设置图纸新原点END SW - 引入第三方dwg图纸后,修改坐标原点 概述 在solidworks中引入第三方的dwg格式图纸后,坐标原点大概率都不合适。 全图自动缩放后,引入的图纸离默认的原点位置差很多。 需要自己重新设置原点位置,才能自动缩放后,在工作区中间显示引入的图纸。 笔记 将dwg图纸拖到SW中

三维激光扫描点云配准外业棋盘的布设与棋盘坐标测量

文章目录 一、棋盘标定板准备二、棋盘标定板布设三、棋盘标定板坐标测量 一、棋盘标定板准备 三维激光扫描棋盘是用来校准和校正激光扫描仪的重要工具,主要用于提高扫描精度。棋盘标定板通常具有以下特点: 高对比度图案:通常是黑白相间的棋盘格,便于识别。已知尺寸:每个格子的尺寸是已知的,可以用于计算比例和调整。平面标定:帮助校准相机和激光扫描仪之间的位置关系。 使用方法 扫描棋盘:

C/C++两点坐标求距离以及C++保留两位小数输出,秒了

目录 1. 前言 2. 正文 2.1 问题 2.2 解决办法 2.2.1 思路 2.2.2 代码实现 3. 备注 1. 前言 依旧是带来一个练手的题目,目的就一个,方法千千万,通向终点的方式有很多种,没有谁与谁,我们都是为了成为更好的自己。 2. 正文 2.1 问题 题目描述: 输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。 输入格式:

1.39TB高清卫星影像更新(WGS84坐标投影)

最近对WGS84版的高清卫星影像数据进行了一次更新,并基于更新区域生成了相应的接图表。 1.39TB高清卫星影像更新 本次数据更新了1576个离线包,共1.39TB大小,并全部生成了更新接图表。 更新接图表范围 更新接图表由每一个离线包文件的范围构成,放大地图可以查看接图表的编号。    接图表编号 我们打开瓦片编号并放到到第12级,可以发现接图表的编号与瓦片编号完全一

linux如何创建一个空的固定大小的文件

使用dd命令 dd 是一个非常强大的工具,可以用来复制文件和转换文件。你可以使用 dd 来创建一个固定大小的文件。 例如,要创建一个名为example.dat的1GB大小的文件,你可以使用以下命令: dd if=/dev/zero of=myfile bs=1M count=100 if=/dev/zero:表示从 /dev/zero 设备读取数据。/dev/zero 会生成无限的零字节

halcon 的图像坐标转到实际的机械坐标的标定

所谓手眼系统,就是人眼睛看到一个东西的时候要让手去抓取,就需要大脑知道眼睛和手的坐标关系。如果把大脑比作B,把眼睛比作A,把手比作C,如果A和B的关系知道,B和C的关系知道,那么C和A的关系就知道了,也就是手和眼的坐标关系也就知道了。 相机知道的是像素坐标,机械手是空间坐标系,所以手眼标定就是得到像素坐标系和空间机械手坐标系的坐标转化关系。 在实际控制中,相机检测到目标在图像中的像

tikz-坐标平移

关键字:xshift,yshift,shift 要点: - 如果xshift或yshift的偏移量值为0,则可以省略。 - 如果x或y方向上某个值为0,则shift可以用更易读的xshift或yshift代替。 - shfit后面的参数要用花括号括起来 这里以正六边形为例,代码: \begin{tikzpicture}[scale=1]\coordinate (P1) at (1,0)

tikz-坐标、运算、颜色、node

要点: - 可以用加减乘除的运算符号,提高易读性,比如2*60,而不是直接写120度; - 画图设置颜色,比如color=gray; - draw的时候,多个线段可以放在一个draw命令中,比如下面画OPn的时候,放在一个命令,这可以提高易读性 \begin{tikzpicture}[scale=1]\coordinate (O) at (0, 0);\coordinate (P1) a

tikz-定义坐标点

点的定义方式可以是笛卡尔坐标方式,也可以是极坐标方式。而且可以是\path打头的,也可以是\coordinate。 下面是画一个正三角形。 \begin{tikzpicture}[scale=1]\coordinate (A) at (0, 0);\coordinate (B) at (60:1cm);\path (1,0) coordinate (C);\draw (A)--(B)--(

在百度地图API开发中已知两个点之间的经纬度坐标计算其距离

以往网上给出了计算方法,但是double类型的数后面有很多位小数,现在给出一个函数,其值跟百度地图APP软件的距离一样 public String getLatLngDistance(LatLng start, LatLng end){   //自己实现距离算法:   /**    * 计算两点之间距离    * @param start    * @param end    * @return