When plotting the reprojected Postel map with Sunpy AIA sample AIA_171_IMAGE, I get
WARNING: SunpyMetadataWarning: Missing metadata for observer: assuming Earth-based observer.
For frame ‘heliographic_stonyhurst’ the following metadata is missing: hgln_obs,dsun_obs,hglt_obs
For frame ‘heliographic_carrington’ the following metadata is missing: dsun_obs,crln_obs,crlt_obs
[sunpy.map.mapbase]
Yet these keywords exist in the sample’s FITS headers:
from astropy.io import fits
hdul = fits.open(AIA_171_IMAGE)
kv = [hdul[1].header[key] for key in ['hgln_obs', 'dsun_obs', 'hglt_obs', 'crln_obs' , 'crlt_obs']]
kv
That warning shouldn’t be emitted, but I don’t know if it’ll be easy to fix. Go ahead and report it.
The keywords exist in the original FITS header, but the keywords are not carried over to the header for the reprojected map. That’s because observer heliographic location and distance are irrelevant for a map in Stonyhurst heliographic coordinates. So, the warning is correct that the keywords are not there, but ideally no code should looking for those keywords, which is why I say that the warning shouldn’t be emitted.
Okay, so the problem is not the out_map.plot() call, but rather the subsequent calls to out_map.draw_grid() and out_map.draw_limb(). You could manually add the keywords to the header of out_map, but the most expedient thing you can do to avoid the warning is to simply call aia_map.draw_grid() and aia_map.draw_limb() instead. Unlike out_map, aia_map has the full observer information.