爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 3572|回复: 2

python 用cartopy画图,图为什么不对呀

[复制链接]

新浪微博达人勋

发表于 2019-9-6 15:39:47 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
第一次用python画图,我不会不会
  1. import os
  2. import matplotlib.path as mpath
  3. import matplotlib.pyplot as plt
  4. import matplotlib as mpl
  5. import cartopy.crs as ccrs
  6. import cartopy.feature as cfeature
  7. from cartopy.mpl.ticker import LongitudeFormatter, LatitudeFormatter
  8. import numpy as np
  9. import netCDF4
  10. os.chdir(r'E:\1sjh\data_m\data\ice')  #指定批量数据所在的文件夹
  11. a = os.listdir(r'E:\1sjh\data_m\data\ice')
  12. def data():
  13.         nc_obj=netCDF4.Dataset(a[0])
  14.         LAT=nc_obj.variables['latitude'][:]
  15.         LON=nc_obj.variables['longitude'][:]
  16.         SEAICE=nc_obj.variables['seaice_conc_monthly_cdr'][0,:,:]
  17.         return LAT,LON,SEAICE
  18. cmap = plt.get_cmap('Blues')
  19. #norm = mpl.colors.Normalize(vmin=0, vmax=1)
  20. def make_map():
  21.         fig=plt.figure(figsize=(10,5))
  22.         ax=fig.add_subplot(111,projection=ccrs.NorthPolarStereo())
  23.         ax.set_extent([-180,180,60,90], ccrs.PlateCarree())
  24.         lat,lon,seaice=data()
  25.         levels=[0,0.05,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1]
  26.         p=ax.contourf(lon,lat,seaice,levels=levels,zorder=5,transform=ccrs.PlateCarree())
  27.         ax.add_feature(cfeature.LAND)
  28.         ax.add_feature(cfeature.OCEAN)
  29.         ax.set_title('SEAICE')
  30.         ax.coastlines()
  31.         ax.gridlines()
  32.         #fig.colorbar(p)
  33.         plt.show()

  34. make_map()
复制代码
出来的图是:                                                                  数据是
QQ截图20190906153359.png        QQ截图20190906153635.png QQ截图20190906153651.png


matlab画出来就是
QQ截图20190906153841.png

python程序哪里错了呀,为什么极地附近没有画出来呢
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-9-6 17:16:54 | 显示全部楼层
好巧,今天花了一天时间,画了一个南极的图,基本和你的代码一样,不过我不建议这样写代码,你这样是高手的写法,利用函数,我写的比较简单,你的图画得很怪,其实画出来,你不了解北极,北极点就是海洋,左下就是北极大陆!
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2019-9-6 18:19:04 | 显示全部楼层
对方的凤飞飞 发表于 2019-9-6 17:16
好巧,今天花了一天时间,画了一个南极的图,基本和你的代码一样,不过我不建议这样写代码,你这样是高手的 ...

第一个图是我python画出来错的图,数据是海冰的,但在海上没有颜色 反而一些部分陆地上有颜色。而且画出来的并不连贯额。。你方便发一下你的程序给我吗,我学下
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表