我正在学习networkx库并使用twitter转发有向图数据。 我首先将数据集读入pandas df(列是'来自','到',' weight')并想要将前300行(转推)放入使用以下代码的图表:
tw_small = nx.from_pandas_dataframe(edges_df[:300],source='from',
target='to',edge_attr=True)
我认为它正确地创建了一个图表但是当我运行tw_small.is_directed()
时,它显示False
(无向图)并且我使用nx.draw()
绘制了一个图表,但它并没有显示方向。
有人可以帮我找到制作有向图的正确方法吗?
感谢。
答案 0 :(得分:11)
添加可选关键字参数create_using = nx.DiGraph(),
tw_small = nx.from_pandas_dataframe(edges_df[:300],source='from',
target='to',edge_attr=True,
create_using=nx.DiGraph())
答案 1 :(得分:0)
您可以编写边列表来代替数据帧,它对我有用,当我使用from_pandas_dataframe : "AttributeError: module 'networkx' has no attribute 'from_pandas_dataframe
“
Graph = nx.from_pandas_edgelist(df,source='source',target='destination', edge_attr=None, create_using=nx.DiGraph())
您可以使用nx.is_directed(Graph)
测试图形是否有向。您将获得True。