【发布时间】:2021-11-17 04:25:31
【问题描述】:
我是 Matplotlib 的新手,我使用 matshow 函数创建了一些数字相关性的热图。目前,下面的代码仅显示每 5 个标签(或刻度),我希望它显示所有这些。代码:
names = list('ABCDEDFGHIJKLMNOPQRSTU')
#just some random data for reproductability
df = pd.DataFrame(np.random.randint(0,100,size=(100, 22)), columns=names)
fig = plt.figure()
ax = fig.add_subplot(111)
cor_matrix = df.corr()
#these two lines don't change the outcome
ax.set_xticks(np.arange(len(names)))
ax.set_yticks(list(range(0,len(names))))
ax.matshow(cor_matrix)
plt.show()
我读到了这个问题:How to display all label values in matplotlib? 但是那里的答案对我不起作用。如果我没有明确设置刻度,或者以任何一种方式设置它们,这个数字就不会改变。
也试过这个问题的解决方案:How to make matplotlib show all x coordinates?
是plt.xticks(list(range(0,len(names)))),但也没有任何作用。
【问题讨论】:
标签: python pandas matplotlib