igraph基本用法

官方参考文档http://www.cs.rhul.ac.uk/home/tamas/development/igraph/tutorial/tutorial.html

Starting igraph

从igraph模块中导入所有函数

from igraph import *
g = Graph(1) # 此时的graph只有1个顶点,0条边
print(g)

IGRAPH U— 1 0 –

Graph.add_vertices()

Graph.add_vertices()的作用是给graph添加顶点数,并且返回这个graph

g.add_vertices(2)	# 此时的graph有3个顶点,0条边

graph的顶点从0开始标号,即3个顶点对应编号为0, 1, 2

Graph.add_edges()

1.Graph.add_edges()的作用是添加边的,边必须由整数对指定,比如(0, 1)表示顶点0与顶点1之间添加边
2.函数添加边时需要列表符号[]
3.当添加的边的顶点编号不存在比如g.add_edges((5, 0)),程序报错
4.边也存在编号,同样是从0开始

g.add_edges([(0, 1), (1, 2)])	# 此时的graph有3个顶点,2条边
# 添加更多的边和顶点数
g.add_edges([(2, 0)])
g.add_vertices(3)
g.add_edges([(2, 3), (3, 4), (4, 5), (5, 3)])

IGRAPH U— 6 7 –
edges: 0–1 1–2 0–2 2–3 3–4 4–5 3–5
此时的graph (无向图)6个顶点,7条边;edges表示哪些顶点之间存在边的关系

Graph.delete_edges()

delete_edges()作用为边的删除,函数需要由边的编号组成的列表或者是单独的边的编号

Graph.delete_vertices()

1.delete_edges()作用为顶点的删除,函数需要由顶点的编号组成的列表或者是单独的顶点的编号

Graph.get_eid()

get_eid作用为获取连接两个顶点边的编号,当你不知道需要删除的边的编号时,可以使用这个函数

g.get_eid(2, 3)		# out: 3
# 此时graph删除编号为3的边
g.delete_edges(3)
print(g)

IGRAPH U— 6 6 –
edges: 0–1 1–2 0–2 3–4 4–5 3–5

summary()

summary()作用是获取给定的graph的概述
1.列举出边和顶点的个数
2.检查图有向或无向
3.计算图连通分量的个数
4.计算图的直径, 边缘密度,平均路径的长度

summary(g)

官方文档上的结果是 :
6 vertices, 6 edges, undirected
Number of components: 2
Diameter: 1
Density: 0.4000
Average path length: 1.0000
我自己运行的结果是:
IGRAPH U— 6 6 –
不知道哪里出了问题,可能跟igraph的版本有关

未完

上一篇:kafka stream及interceptor(四)


下一篇:SOAP注入学习——安鸾靶场---SOAP协议注入 练习记录