有没有一种方法可以针对变化的x轴限制和y轴限制绘制Matplotlib的Imshow?

时间:2020-01-29 20:20:56

标签: python-3.x numpy matplotlib imshow

我正在尝试使用imshow()可视化一个numpy数组,因为它类似于MATLAB中的imagesc()。

import numpy as np
import matplotlib.pyplot as plt

plt.imshow(np.random.rand(8, 90), aspect='auto')

结果图如下所示,其中自动选择了x轴限制和y轴限制。如何设置参数以更改x轴和y轴,它们具有2种不同大小的元素数组?

例如:x轴= [100,],y轴= [15,]

Figure

我尝试使用extent,但是我需要提供[x-axis_min,x-axis_max,y-axis_min,y-axis_max]。但是问题是,我有一个元素数组作为x轴极限,而一个元素数组作为y轴极限。我不知道如何将这些数组设置为限制?

谢谢

1 个答案:

答案 0 :(得分:2)

如果我理解您的问题,那应该可以解决问题吗?

img = np.random.rand(8, 90)
x = np.linspace(2.2e10, 2.475e10, 100)
y = np.linspace(-0.007, 0.007, 15)

plt.figure()
plt.imshow(img, aspect='auto', extent=[np.min(x), np.max(x), np.max(y), np.min(y)])