我有形状 (1125, 2058) 的数据,我想绘制它的二维图。 x 轴对应于波长,我有一个名为“lam_gal”的 numpy 数组,y 轴对应于半径 r。我的中心 (r=0) 位于 y=596,由此我计算出我的半径为:
y_vals = np.arange(1125)
radii =np.asarray(0.2 * (596-y_vals))
我的剧情代码:
fig, ax = plt.subplots(1,1, figsize=fig_dim)
# Create a 2D plot of the galaxy spectrum using imshow
im=ax.imshow(data_gal, cmap='binary', extent=(lam_gal[0], lam_gal[-1], radii[0], radii[-1]))
# Set axis labels
ax.set_xlabel('Wavelength')
ax.set_xlim(4900, 5450)
ax.set_ylabel('r')
# Show the plot
plt.show()
这里的 y 轴有两个问题,首先我如何将我的 y 轴标签设置为全正,因为负半径是不真实的,其次 0-tick 不与中心线(黑线)对齐,但我很确定对于 y=596 这是中心线。