python创建图片对应的csv格式_python – Networkx:如何从csv文件创建图形边缘?

我正在尝试使用networkx创建一个图表,到目前为止,我已经从以下文本文件创建了节点:

文件1(user_id.txt)示例数据:

user_000001

user_000002

user_000003

user_000004

user_000005

user_000006

user_000007

文件2(user_country.txt)示例数据:如果用户未输入其国家/地区详细信息,则包含少量空白行

Japan

Peru

United States

Bulgaria

Russian Federation

United States

文件3(user_agegroup.txt)数据:包含四个年龄组

[12-18],[19-25],[26-32],[33-39]

我还有其他两个文件,其中包含以下示例数据,用于在图表中添加边缘

文件4(id,agegroup.txt)

user_000001,[19-25]

user_000002,[19-25]

user_000003,[33-39]

user_000004,[19-25]

user_000005,[19-25]

user_000006,[19-25]

user_000007,[26-32]

文件5(id,country.txt)

(user_000001,Japan)

(user_000002,Peru)

(user_000003,United States)

(user_000004,)

(user_000005,Bulgaria)

(user_000006,Russian Federation)

(user_000007,United States)

到目前为止,我已编写以下代码来绘制仅包含节点的图形:

(请检查代码,因为打印g.number_of_nodes()

永远不会打印正确的号节点虽然打印g.nodes()显示正确的否.节点.)

import csv

import networkx as nx

import matplotlib.pyplot as plt

g=nx.Graph()

#extract and add AGE_GROUP nodes in graph

f1 = csv.reader(open("user_agegroup.txt","rb"))

for row in f1:

g.add_nodes_from(row)

nx.draw_circular(g,node_color='blue')

#extract and add COUNTRY nodes in graph

f2 = csv.reader(open('user_country.txt','rb'))

for row in f2:

g.add_nodes_from(row)

nx.draw_circular(g,node_color='red')

#extract and add USER_ID nodes in graph

f3 = csv.reader(open('user_id.txt','rb'))

for row in f3:

g.add_nodes_from(row)

nx.draw_random(g,node_color='yellow')

print g.nodes()

plt.savefig("path.png")

print g.number_of_nodes()

plt.show()

除此之外,我无法弄清楚如何从file4和file5添加边缘.任何有关代码的帮助表示赞赏.

谢谢.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值