【问题标题】:cartopy: how to add an image on top of mapcartopy:如何在地图上添加图像
【发布时间】:2014-04-18 16:11:15
【问题描述】:

如何在地图上叠加自定义图像?

如果我这样做

ax = plt.axes(projection=map_quest_aerial.crs)
ax.set_extent([lon_0, lon_1, lat_0, lat_1])
plt.imshow('myimage.png', extent=(x0,x1,y0,y1))
plt.show()

我的图像在坐标区中正确显示。但是,如果我尝试添加背景地图图像,我的图像将不再出现:

ax = plt.axes(projection=map_quest_aerial.crs)
ax.set_extent([lon_0, lon_1, lat_0, lat_1])
ax.add_image(map_quest_aerial, 10)
plt.imshow('myimage.png', extent=(x0,x1,y0,y1))
plt.show()

只生成地图图像。

这是因为地图图像实际上只是一个仅在绘图命令中生成地图图像并因此破坏我的图像的工厂吗?

【问题讨论】:

  • 可能实际上是相同的,但它对你使用ax.imshow()有帮助吗?
  • 不幸的是,对 ax.imshow() 进行更改并不能解决问题。

标签: matplotlib imshow cartopy


【解决方案1】:

这听起来像是绘制顺序的问题。我认为您需要在对 imshow 的调用中设置 zorder 参数,尝试使用大数字让图像绘制在背景之上:

plt.imshow('myimage.png', extent=(x0, x1, y0, y1), zorder=10)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-25
    • 1970-01-01
    • 1970-01-01
    • 2014-01-26
    • 2014-10-10
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    相关资源
    最近更新 更多