Python学习igraph
总结:学习⼀种全新的语⾔看官⽅的⽂档是真的很有帮助,这次我的⼤部分python代码的完成都是靠着igraph官⽅的API⽂档。 官⽅API:/python-igraph/igraph.Graph-class.html
⾸先导⼊igraph⼯具包 from igraph import *(python语法)
创建图 g = Graph.Tree(127, 2)
运⾏fastunfloding算法 gmunity_multilevel("weight",True)
绘制graph plot(g)
代码参考 python官方文档中文版
给图添加边并且添加权值:g.add_edges([(0,1)])
g.es[1]["weight"]=2
其中g.es[1]代表的是第⼀条边
最开始我的图是从数据库导出,即(点,点,权)这种模式所以就需要从txt⽂档中读边并且建⽴图
打开⽂件:f = open('D:\\test1\\','r')
读⽂件中⼀⾏:line =  f.readline() 注:line是字符串的形式
取出⽂件⼀⾏的整数并且加⼊到数组尾部 result.append(map(int,line.split(',')))
读图完毕后就需要将图放到fastunfolding算法中去了
a = gmunity_multilevel("weight",True)
官⽅API上说 当gmunity_multilevel最后⼀个参数为True的时候
a返回的是⼀组list,list的存放位置在(a[0])处,a[0][s]代表着
community为s的所有顶点
注:a list of VertexClustering objects, one corresponding to each level (if return_levels is True)
取list长度:len(a[0])
将输⼊的图存成gml格式:g.write_graphmlz(self, f, compresslevel=9)
读gml格式的图:g = Graph.Read_GraphMLz("D:\\test1\\l")

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。