目录
问题描述
专业描述:想要绘制一幅社交网络图,并且每个节点上绘制一个饼状图。
大白话:韩韩(楼主)有一天突发奇想,想要画一张图,可以一目了然的展现好友关系以及不同好友的各项兴趣爱好。
问题拆解
数据准备
原始CSV数据下载链接:
链接:https://pan.baidu.com/s/1LuNH-6YDsoyGqqJL2JbKYA
提取码:7as7
好友名单以及兴趣爱好表(表名为:friend_node.csv)。
这里的source就是代表楼主和楼主的朋友们,node_label表示楼主及朋友们的名称。node_size表示楼主和朋友们的相对身高或者balabalaa,任意代表个人属性的性质。share1-shre4表示楼主及朋友们在摄影、游泳、做饭、瑜伽这四项兴趣爱好的相对时间分布情况,这四项相加为100。
楼主与好友的关系表。(表名为:friend_edge.csv)
这里的source和target分别表示楼主和朋友们,比如(1,2)就表示楼主和LL是好朋友。
绘图思路
用Gephi其实可以做出漂亮的network图,但是楼主还需要在每个node上添加代表不同朋友的兴趣的属性,Gephi暂时还实现不了。就转战python。
绘制思路其实分为如下几步:
- 提取数据,用python从CSV文件中提取node和edge的数据。现实分析问题时,大都需要处理大量的数据,所以楼主附上此步的code,对python小白来说非常友好。(此处需点赞!!!)