前言
最近工作中遇到了一些需求,想通过图形化的方式显示社交网络特定用户的好友关系,上网找了一下这方面的图形库有networkx、graphviz等,找了好久我选择了iGraph这个图形库。下面话不多说了,来一起看看详细的介绍吧。
安装igraph
igraph在Windows下的安装稍微有点麻烦,之前尝试在windows用pip和conda直接装igraph都装不上,后来发现了lfd的网站 Unofficial Windows Binaries for Python Extension Packages , 里面有很多python的资源和库与工具。
在上面的网址中找到python_igraph去下载具体的python对应版本和是32位还是64位的,比如我下载了 python_igraph"color: #ff0000">绘制好友关系图
fans.txt 和 follow.txt分别保存了爬取下来的粉丝昵称以及关注人昵称。
#coding=utf-8 from igraph import * count_fans=0 #粉丝数 count_following=0 #关注人数 fans_name=[] #粉丝昵称 following=[] #关注人昵称 #打开爬取下的昵称文件 with open('fans.txt','r') as f: lines=f.readlines() for line in lines: if (line!=None)&(line!='\n'): fans_name.append(line) # print fans_name count_fans+=1 with open('follow.txt','r') as c: lines=c.readlines() for line in lines: if (line!=None)&(line!='\n'): following.append(line) count_following+=1 g = Graph() #创建 g.add_vertices(3+count_fans+count_following) g.add_edges([(0,1),(1,2)]) g.vs[0]["name"]='Ta的粉丝' g.vs[1]["name"]='目标用户' g.vs[2]["name"]='Ta的关注' g.es["trunk"] = [True, True] g.vs["main_node"]=[1.5,3,1.5] for i in range(3,count_fans+3): g.add_edges((0,i)) g.es[i-1]["trunk"]=False for j in range(count_fans+3,3+count_fans+count_following): g.add_edges((2,j)) g.es[j-1]["trunk"]=False index=3 for fans in fans_name: g.vs[index]["name"]=fans g.vs[index]["main_node"]=False index+=1 for name in following: g.vs[index]["name"]=name g.vs[index]["main_node"]=False index+=1 visual_style = {} color_dic={1.5:"#cfe6ff",3:"#7299a7",False:"#cfe6ff"} visual_style["vertex_label_size"]=11 visual_style["vertex_label_dist"]=1 visual_style["vertex_shape"]="circle" visual_style["vertex_size"] = [7+ 10*int(main_node) for main_node in g.vs["main_node"]] visual_style["edge_width"] = [1 + 2 * int(trunk) for trunk in g.es["trunk"]] visual_style["vertex_color"] =[color_dic[main_node] for main_node in g.vs["main_node"]] visual_style["vertex_label"] = g.vs["name"] visual_style["bbox"] = (1000, 1000) visual_style["margin"] = 150 layout = g.layout("grid_fr") visual_style["layout"] = layout plot(g, **visual_style)
最终结果如图:
以上只演示了一个用户的社交关系图,有精力的话可以尝试递归地一层一层爬下去,想象一下最终绘出来的图也是挺炫酷的。
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]