9
私は距離行列からグラフをプロットするプログラムを書いています。それは正常に動作しています。 今、私は特定のノードと特定のエッジが私の選択の特定の色になるようにします。それ、どうやったら出来るの?NetworkxとGraphvizの特定のノードの色付け
プログラムはPythonであり、あなたはGraphvizのが理解属性を使用する必要が描画を行うためにGraphvizのを使用しているのでNetworkxとGraphvizの
import networkx as nx
import numpy as np
import pickle
from random import randint
p_file = open('pickles/distance')
Dist = pickle.load(p_file)
p_file.close()
p_file = open('pickles/names')
Names = pickle.load(p_file)
p_file.close()
dt = [('len', float)]
A = np.array(Dist)*5
A = A.view(dt)
G = nx.from_numpy_matrix(A)
G = nx.relabel_nodes(G, dict(zip(range(len(G.nodes())),Names)))
G = nx.to_agraph(G)
G.node_attr.update(ndcolor="red", node="DC", style="filled")
G.edge_attr.update(color="none")
G.draw('P1.png', format='png', prog='neato')
を与えます。この場合、あなたが言及した方法は適用できません。あなたは他の方法を知っていますか? – Anirudh
グラフGを作成した後に属性を追加できます。G.node [nodename] ['color'] = 'red'などを使用します。 – Aric
ああ、うまくいきました!ありがとうございます。他の人にも役立つように、これを回答に追加することはできますか? – Anirudh