【问题标题】:Overlaying contour plot on basemap在底图上叠加等高线图
【发布时间】:2023-02-04 00:23:48
【问题描述】:

请任何人看看这段代码,它没有给出预期的结果。

    # use the Miller projection
    m = Basemap( projection='mill', resolution='i', lon_0=0., lat_0=0.)
    
    # draw coastline, map-boundary
    m.drawcoastlines(linewidth=0.5)
    m.drawmapboundary( fill_color='white' )
    # draw grid 
    m.drawparallels( np.arange(-90.,90.,30.), labels=[1,0,0,0] )
    m.drawmeridians( np.arange(-180.,180.,60.), labels=[0,0,0,1] )
        # Creating 2-D grid of features
    [Lat, Lon] = np.meshgrid(lats, lons)
    pLat, pLon = m(Lat, Lon)
    # plots filled contour plot
    cfig = m.contourf(pLon, pLat, OLR_2011, levels= clevel, extend = 'both', cmap="jet")
    cbar = m.colorbar(cfig, location = 'right', pad = "10%")  
    plt.show()
      

结果显示在这个figure

我希望叠加图覆盖底图。请问我哪里错了。

【问题讨论】:

    标签: python matplotlib-basemap contourf


    【解决方案1】:

    从纬度/经度转换为地图坐标时,底图采用 (Lon, Lat),而不是 (Lat, Lon)。

    所以你需要更换:

    pLat, pLon = m(Lat, Lon)
    

    和:

    pLon, pLat = m(Lon, Lat)
    

    【讨论】:

      猜你喜欢
      • 2015-01-08
      • 1970-01-01
      • 1970-01-01
      • 2021-12-21
      • 2018-11-19
      • 1970-01-01
      • 2017-07-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多