Python 用imshow一行一行地打印
我想一行一行地绘制一些东西,因为每一行Python 用imshow一行一行地打印,python,matplotlib,plot,imshow,Python,Matplotlib,Plot,Imshow,我想一行一行地绘制一些东西,因为每一行c[row]的长度不同。这是我使用的代码。每一行都映射/呈现到间隔[0,1],不管c[row]是有2,4个元素还是100个元素 #vmin = ... #vmax = ... gca().set_autoscale_on(False) for row in range(len(c)): imshow([c[row]], interpolation = 'nearest', vmin = vmin, vmax = vmax, extent = [
c[row]
的长度不同。这是我使用的代码。每一行都映射/呈现到间隔[0,1],不管c[row]是有2,4个元素还是100个元素
#vmin = ...
#vmax = ...
gca().set_autoscale_on(False)
for row in range(len(c)):
imshow([c[row]], interpolation = 'nearest', vmin = vmin, vmax = vmax, extent = [0, 1, row*1.0/len(c), (row+1.0)/len(c)])
它可以工作,但纵横比总是平方的!我无法添加aspect=
其他内容,因为每次只为一行调用asimshow
如何获得矩形比率(示例2:1而不是正方形1:1)
(或者有一个更好的办法是一行接一行地绘制,而不是
imshow
?)您只需要设置轴的纵横比
ax = gca()
ax.set_aspect(2)
plt.draw()