繁体   English   中英

在使用 astropy WCS 投影时清除 matplotlib 轴标签、刻度和定位器

[英]Clearing a matplotlib axis labels, ticks and locators while using the astropy WCS projection

我正在使用 matplotlib 创建一个绘图网格,它使用天体世界坐标系投影。

我想完成清除其中一个轴(没有标题、标签或刻度),但我无法使用传统命令。

该脚本重现了这些问题:

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

filename = get_pkg_data_filename('galactic_center/gc_msx_e.fits')

hdu = fits.open(filename)[0]
wcs = WCS(hdu.header)

ax = plt.subplot(projection=wcs)
ax.imshow(hdu.data, vmin=-2.e-5, vmax=2.e-4, origin='lower')
ax.grid(color='white', ls='solid')
ax.update({'xlabel': 'Galactic Longitude', 'ylabel': ''})
ax.yaxis.set_ticklabels([], minor=True)
ax.yaxis.set_major_locator(plt.NullLocator())
plt.show()

在此处输入图像描述

我想知道是否有人可以分享任何建议

谢谢你。

代码和 label 不会更改,因为投影将在其为空时填充默认值。 您可以将它们设置为空白,例如'ylabel': ' '

但是将投影定义从wcs更改为wcs[0]是创建所需图形的最快方法。

ax = plt.subplot(projection=wcs[0])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM