2

我没有发布整个代码,因为其中大部分都不相关。我只需要帮助将图像居中。

ra_new2=cat['ra'][z&lmass&ra&dec][i]
dec_new2=cat['dec'][z&lmass&ra&dec][i]
target_pixel_x = ((ra_new2-ra_ref)/(pixel_size_x))+reference_pixel_x     
target_pixel_y = ((dec_new2-dec_ref)/(pixel_size_y))+reference_pixel_y    
fig = plt.figure(figsize=(5.,5.))
galaxy=plt.imshow(img[target_pixel_x-200:target_pixel_x+200, target_pixel_y- 
200:target_pixel_y+200], vmin=-0.01, vmax=0.1, cmap='Greys')
plt.show()

plt.imshow 是我想要居中的。它正确地绘制,但情节在左下角。如何将它放在图形窗口的中间?我需要这个,以便我可以调整缩放的参数。

4

1 回答 1

3

您可以使用该extent=(left, right, bottom, top)参数来告诉imshow您想要图像的位置。值left, right, bottom,top位于数据坐标中。

例如,

import matplotlib.pyplot as plt
import matplotlib.image as mimage
import matplotlib.cbook as cbook
datafile = cbook.get_sample_data('logo2.png', asfileobj=False)
im = mimage.imread(datafile)
fig, ax = plt.subplots(figsize=(5.,5.))
myaximage = ax.imshow(im,
                      aspect='auto',
                      extent=(20, 80, 20, 80),
                      alpha=0.5)
ax.plot(range(100))
plt.show()

生产

在此处输入图像描述

于 2013-06-30T01:39:16.020 回答