使用Cartopy绘制月球地图时背景图位置偏移问题
月球AzimuthalEquidistant投影标记点偏移问题
我尝试采用AzimuthalEquidistant投影绘制月球地图,并在Orientale Mare的经纬度位置标记一个点。但绘制后,标记点位于Orientale正上方,而该投影本应以该点为中心。
背景图采用USGS发布的LROC WAC全球100m分辨率 mosaic图,我认为它采用PlateCarree投影。
以下是使用的代码:
import cartopy.crs as ccrs import matplotlib.pyplot as plt from PIL import Image # 原代码遗漏该导入,补充以保证可运行 olat = -19.8304 olon = 264.757 moon = ccrs.Globe(semimajor_axis=1738100, semiminor_axis=1738100, ellipse=None) pc = ccrs.PlateCarree(globe=moon) ae = ccrs.AzimuthalEquidistant(olon, olat, globe=moon) fig = plt.figure() ax = plt.subplot(111, projection=ae) bg = Image.open('moon2.jpeg') plt.imshow(bg, extent=(-180,180,-90,90), transform=pc) gl = ax.scatter(olon, olat, transform=pc) ax.set_global() plt.show()
错误的绘制效果:
对比:若全部采用PlateCarree投影绘制,标记点与Orientale完全对齐:
我已尝试重新定义Cartopy使用的月球椭球,但问题未解决;经纬度确认是正确的,因为PlateCarree投影下所有元素都对齐。
内容的提问来源于stack exchange,提问作者Simon Toogood
相关产品推荐
相关产品推荐

