如何在不使用matplotlib缩放图像的情况下重新缩放轴?

时间:2016-06-09 12:03:08

标签: python matplotlib scale

我有一个像这样的简单图像:

import numpy as np
import matplotlib.pyplot as plt

data = np.arange(25)
data.shape = (5,5)

plt.imshow(data, interpolation='none')
plt.show()

在这种情况下,输入数据为5x5矩阵。轴上的刻度从0到4.如何在不更改显示图像的情况下将此范围更改为10到50?我想重新缩放轴而不缩放图像。

2 个答案:

答案 0 :(得分:4)

使用extent属性imshow,您可以在轴上放置任何可能的范围,而无需更改绘图。

import numpy as np
import matplotlib.pyplot as plt

data = np.arange(25)
data.shape = (5,5)

plt.imshow(data, interpolation='none', extent=(-3, 27, 5, 31))
plt.show()

这给出了:

enter image description here

答案 1 :(得分:4)

通常,对于任何情节,您都可以使用xticksyticks,例如

import numpy as np
import matplotlib.pyplot as plt

data = np.arange(25)
data.shape = (5,5)

plt.imshow(data, interpolation='none')
plt.xticks([0, 1, 2, 3, 4], [10,20,30,40,50])
plt.yticks([0, 1, 2, 3, 4], [10,20,30,40,50])
plt.show()

enter image description here