我正在尝试使用imshow()绘制热图。当我的x和y数据值都具有相似的数量级时,它可以正常工作。但是,如果x和y的数量级不同(例如,所有0
答案 0 :(得分:0)
您将要specify the size of the figure, using figsize。
Figsize接受具有两个浮点数的元组:(宽度,高度)
与imshow()
一起使用:
fig, ax = subplots(figsize=(18, 2))
ax.imshow(random.rand(8, 90), interpolation='nearest')
tight_layout()
或者,如果您只想使用pyplot.plot(),则可以尝试以下操作:
plt.figure(figsize=(15,5))
https://matplotlib.org/3.1.0/api/_as_gen/matplotlib.pyplot.figure.html
答案 1 :(得分:0)
偶然发现了这个问题(由于我的措词/关键字差异,之前没有找到它),它具有我正在寻找的答案。
figure of imshow() is too small
如果其他人使用我的搜索字词,我将在这里留下问题作为指针。
正在发生的事情(在链接上有解释)是imshow默认将其aspect
参数默认设置为"equal"
,这导致了我最初的问题中所述的行为。要解决此问题,请设置aspect="auto"
。例如:
ax.imshow(data, aspect="auto", **kwargs)