Python 如何使用matplotlib为多个图形使用相同的颜色贴图

Python 如何使用matplotlib为多个图形使用相同的颜色贴图,python,matplotlib,networkx,colormap,Python,Matplotlib,Networkx,Colormap,我使用networkx进行社交网络分析,并使用其内置功能绘制网络的各个部分。我根据学科绘制了8个不同的网络。为了给节点着色,我使用matplotlib colormap。这适用于每个单独的绘图 但是,我希望在所有8个图形中使用相同的颜色,即值0.5应始终表示相同的颜色。目前,实际颜色取决于子图中的其他颜色(例如,如果最大值为0.5,则会产生不同的颜色,如果最小值为0.5) node\u color变量是动态计算的,即它包含所有8个子图的不同值 将networkx导入为nx 学科中的学科: #这

我使用networkx进行社交网络分析,并使用其内置功能绘制网络的各个部分。我根据学科绘制了8个不同的网络。为了给节点着色,我使用matplotlib colormap。这适用于每个单独的绘图

但是,我希望在所有8个图形中使用相同的颜色,即值0.5应始终表示相同的颜色。目前,实际颜色取决于子图中的其他颜色(例如,如果最大值为0.5,则会产生不同的颜色,如果最小值为0.5)

node\u color
变量是动态计算的,即它包含所有8个子图的不同值


将networkx导入为nx
学科中的学科:
#这是networkx图形
K=nx.karate_club_graph()#仅作说明
#在我的代码中,它为每个规程返回不同的图形,请参见下文
#K=按专业过滤图(专业)
plt.图(figsize=(10,7))
位置=nx.弹簧布局(K,种子=1)
#这将返回一个数值列表
node_color=[nx.介数_中心度(K)[v]表示v在K中]
nx.draw\u networkx(K,pos,node\u color=node\u color,cmap=plt.cm.tab10)

如何在所有图形中对相同的
介数\中心性
值使用相同的颜色?

显然,在绘制任何图形之前,您需要确定全局最小值和最大值。然后你可以在循环中使用它(可能是通过
norm
参数)。在确定了最小值和最大值之后,@ImportanceOfBeingErnest说。您可以使用
vmin
vmax
。根据它们被用来定义节点颜色映射缩放的最小值和最大值,这很容易。。。谢谢!现在可以了!显然,在绘制任何内容之前,需要确定全局最小值和最大值。然后你可以在循环中使用它(可能是通过
norm
参数)。在确定了最小值和最大值之后,@ImportanceOfBeingErnest说。您可以使用
vmin
vmax
。根据它们被用来定义节点颜色映射缩放的最小值和最大值,这很容易。。。谢谢!现在可以了!