[英]Remove Labels and Tick-marks from Colorbar in Matplotlib
我有一個熱圖,我想刪除顏色欄上的標簽和刻度線。 到目前為止,我如何使用我制作的熱圖(下面的代碼)來做到這一點?
import seaborn as sns
import matplotlib.pyplot as plt
sns.heatmap(my_heatmap, cmap='RdYlGn', vmin=0, vmax=1)
plt.rcParams["figure.figsize"] = (8, 6)
plt.title('10 mm Precipitation Probabilities\nTopeka, Kansas', fontsize = 16)
plt.xlabel('X', fontsize = 14)
plt.ylabel('Y', fontsize = 14)
plt.text(6.7,.18, 'High Probability')
plt.show()
(我寧願只在欄的頂部說高概率,如我制作的 label 所示)。
您可以通過cbar = ax.collections[0].colorbar
訪問顏色欄(參見例如這篇文章)。
然后,您可以更改刻度( cbar.set_ticks([])
)或設置新刻度和新刻度標簽:
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = (8, 6)
my_heatmap = np.random.rand(10, 10)
ax = sns.heatmap(my_heatmap, cmap='RdYlGn', vmin=0, vmax=1)
# ax.get_figure().set_size_inches(8, 6)
ax.set_title('10 mm Precipitation Probabilities\nTopeka, Kansas', fontsize=16)
ax.set_xlabel('X', fontsize=14)
ax.set_ylabel('Y', fontsize=14)
cbar = ax.collections[0].colorbar
cbar.set_ticks([0, 0.5, 1])
cbar.set_ticklabels(['Low\nProbability', 'Average\nProbability', 'High\nProbability'])
# cbar.set_label('Probability')
plt.tight_layout()
plt.show()
請注意plt.rcParams["figure.figsize"]
不會更改圖形的大小,而是為將要創建的下一個圖形設置默認大小。 因此,您需要在sns.heatmap
之前調用它,如果之前沒有創建任何圖形,則會創建一個新圖形。 要更改已創建圖形的大小,請使用set_size_inches()
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.