需要帮助NetworkX

时间:2010-08-23 11:54:48

标签: python graph nodes networkx

目前我面临以下问题:

我有一个脚本搜索包含文档的特定目录。每个文档都在文件名中分配一个数字。每个文档中的数字也代表另一个文档(文件名)。如何创建一个显示哪些文档会导致什么的网页?

感谢任何帮助,谢谢

1 个答案:

答案 0 :(得分:2)

这是有向图的教科书示例。您应该阅读NetworkX tutorial以更好地了解如何使用它们;基本上,你需要添加所有节点(点),在这种情况下是文件号,然后在它们之间添加边。

import os
import networkx as nx

g = nx.DiGraph( )
for filename in os.listdir( <dir> ):
    # do something to filename to get the number
    g.add_node( <number> )

for filename in os.listdir( <dir> ):
    # do something to filename to get the source
    with open( filename ) as theFile:
        # do something to theFile to get the targets
        for target in <targets>:
            g.add_edge( <source>, <target> )

import matplotlib.pyplot as plt
nx.draw( g )