【问题标题】:Choose coordinate system of grid overlay with matplotlib使用 matplotlib 选择网格覆盖的坐标系
【发布时间】:2019-02-15 13:46:53
【问题描述】:

如何判断绘图中使用的是哪个坐标系,以及如何指定要用于叠加网格的坐标系?

from astropy.wcs import WCS
from astropy.io import fits
from astropy.utils.data import get_pkg_data_filename
import matplotlib.pyplot as plt

image_file = get_pkg_data_filename('tutorials/FITS-images/HorseHead.fits')
hdu = fits.open(image_file)[0]
wcs = WCS(hdu.header)

plt.subplot(projection=wcs) 
plt.imshow(hdu.data, origin='lower') 
plt.grid(color='white', ls='solid')
plt.show()

如何指定我希望银河(或赤道)坐标用于plt.grid

【问题讨论】:

    标签: python-3.x matplotlib astropy


    【解决方案1】:

    你可以这样做:

    from astropy.wcs import WCS
    from astropy.io import fits
    from astropy.utils.data import get_pkg_data_filename
    import matplotlib.pyplot as plt
    
    image_file = get_pkg_data_filename('tutorials/FITS-images/HorseHead.fits')
    hdu = fits.open(image_file)[0]
    wcs = WCS(hdu.header)
    
    fig = plt.figure(figsize=(12,12))
    plt.subplot(projection=wcs) 
    plt.imshow(hdu.data, origin='lower') 
    ax = fig.gca()
    overlay = ax.get_coords_overlay('galactic')
    overlay.grid(color='red', ls='dotted')
    plt.show()
    

    正如它所做的那样here。 (没有检查它背后的数学。)

    【讨论】:

      猜你喜欢
      • 2018-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-11
      相关资源
      最近更新 更多