我正在寻找一种方法来绘制具有相同xlim和不同分辨率的多幅图像,这些图像沿x轴对齐并沿y轴堆叠。
我能够使用子图生成想要的东西(如下所示),但我很想知道在单轴上是否有更好,更简单的方法。
这是我用来在下面生成图像的代码:
import numpy as np
import matplotlib.pyplot as plt
N =10
fig,ax = plt.subplots(N,1, figsize=(16,6), sharex=True)
fig.subplots_adjust(hspace=0)
for n in range(N):
x = np.sin(np.linspace(0,2*np.pi,(n+1)*10))
ax[n].imshow([x, x], extent=(0,2*np.pi,0,1), aspect='auto')
ax[n].axis('off')
答案 0 :(得分:1)
在同一轴上绘制所有图像是同样可能的
import numpy as np
import matplotlib.pyplot as plt
N =10
fig, ax = plt.subplots(figsize=(16,6))
ax.axis('off')
for n in range(N):
x = np.sin(np.linspace(0,2*np.pi,(n+1)*10))
ax.imshow([x, x], extent=(0, 2*np.pi, n, n+1), aspect='auto')
ax.autoscale()
ax.invert_yaxis()
plt.show()