【发布时间】:2023-03-25 09:50:01
【问题描述】:
我想以交互方式更改 seaborn 热图。但是,运行sns.heatmap 两次会使颜色条成倍增加(Fig. 1: Before clicking "Reset"、Fig. 2: After clicking "Reset"
)
我尝试在reset回调中将cbar=0设置为热图,颜色条的文本没有改变,尽管后者矩阵的比例是1000倍。
您知道同时更改热图和颜色条的方法吗? 请注意,热图具有不同的网络矩阵大小和不同的调色板。
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
from matplotlib.widgets import Slider, Button, RadioButtons
fig, ax = sns.plt.subplots()
sns.heatmap(np.random.rand(10, 12), ax=ax)
resetax = sns.plt.axes([0.8, 0.025, 0.1, 0.04])
button = Button(resetax, 'Reset', hovercolor='0.975')
def reset(event):
sns.heatmap(np.random.rand(8, 8)*1000, ax=ax, cmap = sns.diverging_palette(220, 10, as_cmap=True))
button.on_clicked(reset)
sns.plt.show()
【问题讨论】:
-
我想你想为热图指定颜色条轴。
标签: python matplotlib widget heatmap seaborn