我有一个简单的Python和Networkx代码,它绘制了一个带有节点标签号和边的二维图沿着(边在我的例子中是无关的,所以如果我能以某种方式删除它们就好了):
import matplotlib.pyplot as plt
import pandas as pd
import networkx as nx
csv_io = pd.read_csv('matrix101.csv', index_col=[0])
#csv_list = csv_io.values.tolist()
N = 5
G = nx.grid_2d_graph(N,N)
pos = dict( (n, n) for n in G.nodes() )
labels = dict( ((i, j), i + 1 + (N-1-j) * N ) for i, j in G.nodes() )
nx.draw_networkx(G, pos=pos, labels=labels, node_color='red')
plt.axis('off')
plt.show()
字符串
输出为(节点颜色为红色):
x1c 0d1x的数据
我希望从2D图中检索节点编号并将它们与CSV矩阵中的值进行比较,该矩阵类似但略有修改.
因此,基本上,当我将CSV文件“matrix101.csv”输入到代码中时,必须比较CSV节点值,并且带有“X”的值应该在原始2D图形中指示不同的颜色.
的数据
我使用Pandas来读取CSV文件,但仅此而已,我遇到了障碍,无法进一步进行。
有什么想法可以实现这个比较两个矩阵的想法吗?
提前感谢!
P.S.从这个问题中借用的代码片段:
Remove rotation effect when drawing a square grid of MxM nodes in networkx using grid_2d_graph
1条答案
按热度按时间pxy2qtax1#
您可以尝试创建颜色列表,然后将其传递给
node_color=
参数:字符串
显示:
的数据