保姆级教程:python读取并绘制nc数据

这篇具有很好参考价值的文章主要介绍了保姆级教程:python读取并绘制nc数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 1.读取nc数据相关信息

import netCDF4
from netCDF4 import Dataset
ncfile = Dataset("/home/hsy/wrf-workstation/wrf-version4.4/WPS/geo_em.d01.nc")
ncfile
print(ncfile.variables.keys())

import matplotlib.pyplot as plt
long = ncfile["XLONG_M"][:]
long
lat = ncfile["XLAT_M"][:]
lat
HGT=ncfile["HGT_M"][:]
HGT.shape
long.shape
lat.shape

plt.contourf(HGT[0])
plt.colorbar(label="HGT_M", orientation="horizontal")
plt.show()

保姆级教程:python读取并绘制nc数据

2.利用basemap绘图 

#利用basemap绘图

import netCDF4
from netCDF4 import Dataset
from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
import numpy as np


ncfile = Dataset("/home/hsy/wrf-workstation/wrf-version4.4/WPS/geo_em.d01.nc")
ncfile

import matplotlib.pyplot as plt


#开始绘图
fig = plt.figure(figsize=(10,8))
ax = fig.add_subplot(111)
#设定标题
titleName = "geo land use"
#ax.set_title(titleName, pad=6, fontproperties = prop)

# 设置投影方式:cyl为圆柱投影、还可设置merc为mercator投影,lcc兰伯特投影等。
# 参数 "resolution" 用于控制地图面积边缘的精细程度,有 'crude', 'low' and'intermediate' resolution datasets are installed by default.
#如果需要'high' or 'full' resolution dataset,需要`conda install -c conda-forge basemap-data-hires`.
m = Basemap(lat_1=30, lat_2=62, lon_0=103,projection='lcc',resolution='i', 
            llcrnrlon=80, llcrnrlat=10, urcrnrlon=145, urcrnrlat=55)
# 设置经纬度
# 绘制纬度坐标,纬度每隔10度画一条线,且左侧和右侧标注纬度。
m.drawparallels(np.arange(10., 55., 10.), labels=[1, 1, 0, 0], fontsize=10)
# 绘制经度坐标,经度每隔10度画一条线,且上侧和下侧标注经度。
m.drawmeridians(np.arange(70., 160., 10.), labels=[0, 0, 1, 1], fontsize=10)
#添加中国地图图层
m.readshapefile("/home/hsy/03-datadownload/shpdata/china/china", "China_shp")
#添加大陆地图图层
m.fillcontinents(color = "coral", lake_color="blue")
#设定海洋的颜色
m.drawmapboundary(fill_color="aqua")

#在指定位置绘制坐标点
lon_me = long.mean()
lat_me = lat.mean()
lon_do, lat_do = np.meshgrid(lon_me, lat_me)           #生成网格点坐标矩阵

#print(lon,lat)
xi, yi = m(lon_do, lat_do)
#print(xi,yi)
m.plot(xi, yi, "go")   #绘制绿色点
#在指定位置标注文字
plt.text(xi, yi, "A1(%5.1fW, %3.1fN)" %(lon_do, lat_do))

 保姆级教程:python读取并绘制nc数据

3、利用cartopy绘图

利用cartopy绘图的详细内容,可以参考此链接: http://t.csdnimg.cn/GjYUb

import cartopy.crs as ccrs
import cartopy.io.shapereader as shpreader
import cartopy.feature as cfeat
#import reader
#创建画布
proj = ccrs.LambertConformal()
fig = plt.figure(figsize=(15,7))
#创建投影轴
fig, ax = plt.subplots(1,1,subplot_kw={"projection":proj})
lat1=ncfile.variables["XLAT_M"][:]
lon1=ncfile.variables["XLONG_M"][:]
print(lon1[0].shape, lat1[0].shape)
ax.contourf(lon1[0], lat1[0],HGT[0])
filepath = "/home/hsy/03-datadownload/shpdata/china/china.shp"
readershp = shpreader.Reader(filepath)
readershp
geoms = readershp.geometries()
ax.add_geometries(geoms, proj, lw=0.5, fc="none")   #facecolor="none"前景色无。
readershp.close()
plt.show()

保姆级教程:python读取并绘制nc数据文章来源地址https://www.toymoban.com/news/detail-449803.html

到了这里,关于保姆级教程:python读取并绘制nc数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • .net core .net6 读取数据库 读取配置文件 保姆级教程

    本文环境 Microsoft Visual Studio 2022 .Net6 SQLServer2019 在解决方案管理器右键添加相关的包,如下两个包 Microsoft.Data.SqlClient SQLServer SQLServer数据库 Microsoft.Extensions.Configuration.Json json配置文件 添加配置文件 appsettings.json,选始终复制 添加json配置文件内容如下 DefaultConnection 根据自己的

    2024年02月08日
    浏览(50)
  • 如何调教让chatgpt读取自己的数据文件(保姆级图文教程)

    提示:如何调教让chatgpt读取自己的数据文件(保姆级图文教程) chatgpt提示不能读取我们提供的数据文件,我们应该对它进行调教。 让chatgpt读取自己投喂的数据,然后帮忙分析。这时候我们需要通过调教对话让他主动读取自己的数据,具体步骤如下。 1.先说明目的 2.让他提供方

    2024年02月13日
    浏览(49)
  • Python读取.nc文件的方法与技术详解

    目录 一、引言 二、使用netCDF4库读取.nc文件 安装netCDF4库 导入netCDF4库 打开.nc文件 获取变量 读取变量数据 案例与代码 三、使用xarray库读取.nc文件 安装xarray库 导入xarray库 打开.nc文件 访问变量数据 案例与代码 四、性能与优化 分块读取 使用Dask进行并行计算 减少不必要的变量

    2024年04月23日
    浏览(29)
  • python读取excel数据并用双y轴绘制柱状图和折线图,柱子用渐变颜色填充

    往期python绘图合集: python绘制简单的折线图 python读取excel中数据并绘制多子图多组图在一张画布上 python绘制带误差棒的柱状图 python绘制多子图并单独显示 python读取excel数据并绘制多y轴图像 python绘制柱状图并美化|不同颜色填充柱子 python随机生成数据并用双y轴绘制两条带误差

    2024年02月10日
    浏览(47)
  • 利用MATLAB读取.nc文件单像元数值并转为Excel格式(以中国日降雨量月均数据为例)

     以中国日降雨量月均数据(nc文件包含12月)为例,提取某经纬度下的多月份像元值。 (【数据分享】1960-2020年中国1公里分辨率月降水数据集) 一、确定经纬度所在行列 号 以 92.18E,30.475N 为例,首先在Matlab中输入以下代码: 工作区获取到lat、lon和pre的信息,打开lat和lon文件

    2024年02月07日
    浏览(46)
  • 如何用Python进行数据分析(保姆级教程)

    有小伙伴在学Python新手教程的时候说学Python比较复杂的地方就是资料太多了,比较复杂。 很多网上的资料都是从语法教起的,花了很多时间还是云里雾里,摸不清方向。今天就给大家来捋一捋思路!帮助大家提高学习效率! Python数据分析资料可以点击下方链接或者扫描下方

    2024年01月21日
    浏览(49)
  • uniapp微信小程序地图实现绘制polygon(保姆级教程 全网最全!!!)

    用户需求:需要在填写表单信息时,在地图上标绘自己房屋的位置信息。 这个问题处理了很久,在网上也没有找到全面的相关案例,所以我将我的思路分享给大家,希望可以解决大家遇到的问题。如果大家有更好的思路,欢迎评论区留言,大家一起学习,共同进步! 实现最

    2024年02月04日
    浏览(107)
  • Python保姆级教程 数据类型—新手小白入门必看系列

    推荐使用压缩软件和杀毒软件 7 - zip 使用火绒 优点: 代码说明 没注释的代码 有注释的代码 不让解释器执行注释的那句话 单行注释快捷键:ctrl + ? \\\"\\\"\\\"\\\"\\\"\\\" (三个双引号) 185730213551 什么是变量:可以改变的量 计算机用来存贮数据的盒子,想用这个数据,就直接那盒子就好了

    2024年02月16日
    浏览(58)
  • Python 数据可视化教程 - 如何使用 pyecharts 绘制多条折线图表

    部分数据来源: ChatGPT   引言         本文主要介绍如何使用 Python 中的 pyecharts 库,绘制多条折线图表。在本例中,我们将展示各国的 COVID-19 确诊人数数据。 1、首先,我们需要导入必要的库: 其中, json  库用于解析 JSON 数据, pyecharts  库用于绘图, TitleOpts 、 Lege

    2024年02月09日
    浏览(56)
  • Python如何处理JSON数据,保姆级教程,小白也能玩转

            json (JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)         所谓序列化,就是python编码为json类型;反序列化,就是json解码为python类型。下文将会详细展开Python里这两种的具体函数

    2024年02月07日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包