【发布时间】:2016-04-02 10:25:58
【问题描述】:
我正在尝试解决我的系统(Python/Storm)遇到的问题,但不确定什么是最好的工具。
目标:使用节点输入和输出的约束创建图的边。
我有大约 400 多个 python 函数(apachestorm shell 螺栓每个螺栓都包含一个函数 - 在这种情况下,Storm 并不重要,我会将它们视为节点)。
每个螺栓/功能/节点都有一个定义的输入和输出名称属性列表。 我有一个来源(有输出,但没有输入)。 节点(有输入和输出列表) Sink(只输入不输出)。
为了更清楚,让我们说我有:
S = Source , Input = [] , Output = ["a","b","c","d"] ("a","b","c","d" are attributes the sources produces).
A = Node , Input = ["a","b"], output = ["e"]
B = Node , Input = ["a","e"], output = ["f"]
Si = Sink, Input = ["a","b","c","d","e","f"] , Output = []
我希望 NetworkX(或其他图形库)使用节点上的这些约束单独创建边。
每个节点输出只是输出列表,不是输出+输入。
我想要的输出是边列表:
S,A
S,B
A,B
B,Si
A,Si
S,Si
*图中C=Si
NetworkX 是否支持这样的构建?如果可以,我该如何实现?
【问题讨论】:
标签: python graph graphviz networkx