私のシステム(Python/Storm)で問題を解決しようとしていますが、何が最善のツールかはっきりしません。ノード制約を使用してグラフを生成するためにpythonを使用する
目標:ノードの入力と出力の制約を使用して、グラフのエッジを作成します。
私は約400以上のpython関数を持っています(apache storm shell bolts各ボルトラップ関数の1つ - この場合、Stormは本当に問題ではありません。ノードとして扱います)。
各bolt/function/Nodeには、入力と出力の名前属性リストが定義されています。 私はソースを持っています(出力はありますが、入力はありません)。 ノード(入出力リストを持つ) シンク(入力のみの出力)。
が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サポート、ビルドに?どうすれば実装できますか?
ちょうど私が欲しかったもの! 私の例は、もっと複雑なもの(私がもともと意味していたもの)に修正しました。 はあなたのコードを試してみました。 – etlsh