婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 如何使用Python對NetCDF數據做空間相關分析

如何使用Python對NetCDF數據做空間相關分析

熱門標簽:房產電銷外呼系統 南京銷售外呼系統軟件 315電話機器人廣告 蓋州市地圖標注 地圖制圖標注位置改變是移位嗎 浙江電銷卡外呼系統好用嗎 地圖標注的意義點 上海機器人外呼系統哪家好 地圖標注微信發送位置不顯示

引言:我一直想理解空間相關分析的計算思維,于是今天又拿起Python腳本和數據來做練習。首先需要說明的是,這次實驗的數據和Python腳本均來自于[好久不見]大佬,在跟大佬說明之后,允許我寫到公眾號來與大家共享,在此對大佬的指點表示感謝,這次實驗的腳本可在氣象家園或簡書app(如果沒記錯的話)搜索到這次實驗的相關內容,也可以微信或者后臺發消息給我獲取。在此之前我覺得自己還沒理解這個方法的計算思維,檢驗的標準就是我能否迅速運用到其他方面。于是今天又重新回來溫習一遍,我把自己的理解與大伙共同交流。

首先,數據的格式是NetCDF(.nc)數據,兩個數據分別是[哈德來中心海溫sst數據,pc數據是對東太平洋SSTA做的EOF獲取]。知道數據信息之后我們就準備開始去運行程序。原始腳本包括了回歸分析和相關分析兩部分,但是今天我做了空間相關分析這一部分,有興趣的可以到[好久不見]大佬的氣象家園閱讀喔!如果還沒有安裝Cartopy包的話請在后臺聯系我喔

為了方便理解每一步,我選擇去Jupyter運行,因為可以一段一段程序的運行,這是比較方便的。繪圖部分并不是很難,關鍵還是在于數據預處理部分。

空間相關分析的腳本如下:

import numpy as np #數值計算用,如相關系數
import xarray as xr #讀取.nc文件用
from sklearn.feature_selection import f_regression #做顯著性檢驗
import matplotlib.pyplot as plt #繪制和展示圖形用
import cartopy.crs as ccrs #繪制地圖用,如果沒有安裝好的話,請在后臺聯系我
import cartopy.feature as cfeature #添加一些矢量用,這里沒用到,因為我沒數據
from cartopy.mpl.ticker import LongitudeFormatter, LatitudeFormatter #經緯度格式設置
import cmaps #ncl的color,如果沒有的話,請聯系我,也可以在氣象家園找到

#使用上下文管理器讀取.nc數據,并提取數據中的變量,可以提前用NASA的panoply這個軟件查看.nc信息
with xr.open_dataset(r'D:\inuyasha\codeX\codeLEARN\sst.DJF.mean.anom.nc') as f1:
      pre = f1['sst_anom'][:-1, :, :]  # 三維數據全取,時間,緯度+經度
      lat, lon = f1['lat'], f1['lon'] #提取經緯度,后面格網化需要用到
pre2d = np.array(pre).reshape(pre.shape[0], pre.shape[1]*pre.shape[2])
#0表示行個數,1列代表的個數,2經度代表個數
with xr.open_dataset(r'D:\inuyasha\codeX\codeLEARN\pc.DJF.sst.nc') as f2:
      pc = f2['pc'][0, :]

# 相關系數計算
pre_cor = np.corrcoef(pre2d.T, pc)[:-1, -1].reshape(len(lat), len(lon))

# 做顯著性檢驗
pre_cor_sig = f_regression(np.nan_to_num(pre2d), pc)[1].reshape(len(lat), len(lon))#用0代替NaN
area = np.where(pre_cor_sig  0.05)
# numpy的作用又來了 
nx, ny = np.meshgrid(lon, lat)  
# 格網化經緯度,打印出來看看就知道為什么要這么做了
plt.figure(figsize=(16, 8)) #創建一個空畫布
#讓colorbar字體設置為新羅馬字符
plt.rcParams['font.family'] = 'Times New Roman'
plt.rcParams['font.size'] = 16

ax2 = plt.subplot(projection=ccrs.PlateCarree(central_longitude=180))
# 在畫布上繪圖,這個叫axes,這不是坐標軸喔
ax2.coastlines(lw=0.4)
ax2.set_global()
c2 = ax2.contourf(nx, ny, pre_cor, extend='both', cmap=cmaps.nrl_sirkes, transform=ccrs.PlateCarree())
plt.colorbar(c2,fraction=0.05,orientation='horizontal', shrink=0.4, pad=0.06)
# extend關鍵字設置colorbar的形狀,both為兩端尖的,pad是距離主圖的距離,其他參數web搜索

# 顯著性打點
sig2 = ax2.scatter(nx[area], ny[area], marker='+', s=1, c='k', alpha=0.6, transform=ccrs.PlateCarree())
# 凸顯顯著性區域
plt.title('Correlation Analysis', fontdict={'family' : 'Times New Roman', 'size'   : 16})
#標題字體也修改為新羅馬字符,數字和因為建議都用新羅馬字符
ax2.set_xticks(np.arange(0, 361, 30),crs=ccrs.PlateCarree())
# 經度范圍設置,nunpy的作用這不就又來了嘛
plt.xticks(fontproperties = 'Times New Roman',size=16) #修改xy刻度字體為新羅馬字符
plt.yticks(fontproperties = 'Times New Roman',size=16)
ax2.set_yticks(np.arange(-90, 90, 15),crs=ccrs.PlateCarree())
# 設置y
ax2.xaxis.set_major_formatter(LongitudeFormatter(zero_direction_label = False))#經度0度不加東西
ax2.yaxis.set_major_formatter(LatitudeFormatter())
# 設置經緯度格式,就是多少度顯示那樣的,而不是一些數字
ax2.set_extent([-178, 178, -70, 70], crs=ccrs.PlateCarree())
# 設置空間范圍
plt.grid(color='k')
# 畫一個網格吧
plt.show()
# 顯示出圖形

那么就運行看看效果吧

如果覺得這個color不喜歡的話,就換一下ncl的來吧,ncl的顏色多而漂亮,喜歡啥就換啥

想要理解這個方法的計算思維,有必要觀察原始數據和數據處理之后的樣式,理解了數據樣式之后可能更有助于我們理解整個程序

import numpy as np
import xarray as xr
from sklearn.feature_selection import f_regression
import matplotlib.pyplot as plt
import cartopy.crs as ccrs
import cartopy.feature as cfeature
from cartopy.mpl.ticker import LongitudeFormatter, LatitudeFormatter
import cmaps

with xr.open_dataset(r'D:\inuyasha\codeX\codeLEARN\sst.DJF.mean.anom.nc') as f1:
      pre = f1['sst_anom'][:-1, :, :]  # 三維數據全取,時間,緯度+經度
      lat, lon = f1['lat'], f1['lon']
pre2d = np.array(pre).reshape(pre.shape[0], pre.shape[1]*pre.shape[2])#0行代表的個數,1緯度,2經度
#pre2d.shape是一個39行,16020列的矩陣,T之后就變為了16020行,39列

with xr.open_dataset(r'D:\inuyasha\codeX\codeLEARN\pc.DJF.sst.nc') as f2:
      pc = f2['pc'][0, :]
#pc是一個39行的數組

# # 相關系數
pre_cor = np.corrcoef(pre2d.T, pc)[:-1, -1].reshape(len(lat), len(lon))
#pre_cor.shape,(16020,)->reshape(89,180)
# # 顯著性檢驗

# pre_cor_sig = f_regression(np.nan_to_num(pre2d), pc)[1].reshape(len(lat), len(lon))#用0代替NaN
# area = np.where(pre_cor_sig  0.05)

nx, ny = np.meshgrid(lon, lat)  # 格網化
nx,ny

看看格網化后的經緯度多規范啊。畫張圖來看看可能也會直觀一些。

好吧,今天的分享就到這里了,理解了這個計算思維,能更好地遷移運用到其他研究方面,如果還沒有安裝Cartopy包的話請在后臺聯系我喔,如果需要測試數據和腳本請在后臺聯系我,當然也可以去[好久不見]大佬的主頁。如果覺得這次分享不錯的話,還請老鐵們點個贊,多多分享,歡迎交流學習,感謝各位!

原始資料:

http://bbs.06climate.com/forum.php?mod=viewthreadtid=92816highlight=%CF%D4%D6%F8%D0%D4%BC%EC%D1%E9%2B%CF%E0%B9%D8%B7%D6%CE%F6

以上就是如何使用Python對NetCDF數據做空間相關分析的詳細內容,更多關于Python對NetCDF數據做空間分析的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • python 微信好友特征數據分析及可視化
  • python3對拉勾數據進行可視化分析的方法詳解
  • Python數據分析:手把手教你用Pandas生成可視化圖表的教程
  • Python數據可視化正態分布簡單分析及實現代碼
  • python數據分析之公交IC卡刷卡分析
  • python數據分析之用sklearn預測糖尿病
  • Python數據分析之pandas函數詳解
  • python爬蟲之你好,李煥英電影票房數據分析
  • python基于scrapy爬取京東筆記本電腦數據并進行簡單處理和分析
  • python數據分析之員工個人信息可視化

標簽:赤峰 日照 雙鴨山 陽泉 貴州 克拉瑪依 金華 臨汾

巨人網絡通訊聲明:本文標題《如何使用Python對NetCDF數據做空間相關分析》,本文關鍵詞  如何,使用,Python,對,NetCDF,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《如何使用Python對NetCDF數據做空間相關分析》相關的同類信息!
  • 本頁收集關于如何使用Python對NetCDF數據做空間相關分析的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    成人美女视频在线观看18| 99久久精品国产导航| 国产欧美精品一区二区色综合 | 美女www一区二区| 国产精品国产三级国产a| 日韩免费观看2025年上映的电影| 成人动漫中文字幕| 国产乱码精品一区二区三区忘忧草 | 国产黄色精品网站| 麻豆精品蜜桃视频网站| 午夜电影一区二区| 亚洲成av人片在线| 亚洲综合久久久久| 亚洲欧洲美洲综合色网| 国产精品免费人成网站| 国产精品乱人伦中文| 中文字幕国产一区| 久久网这里都是精品| 亚洲精品一线二线三线无人区| 在线91免费看| 日韩一区二区麻豆国产| 精品少妇一区二区三区视频免付费| 欧美日韩精品一区视频| 欧美男同性恋视频网站| 日韩无一区二区| 亚洲精品一区二区三区99| 国产亚洲欧美日韩日本| 国产精品久久久久久久久晋中 | 国产美女久久久久| 国产精一区二区三区| 国产乱子轮精品视频| 国产 欧美在线| av高清不卡在线| 欧美性受xxxx黑人xyx性爽| 欧美丝袜丝交足nylons| 欧美变态tickling挠脚心| 国产欧美日韩另类一区| 亚洲伦在线观看| 久久97超碰色| 91碰在线视频| 欧美精品在欧美一区二区少妇| 日韩一区二区在线观看视频| 国产情人综合久久777777| 中文字幕亚洲综合久久菠萝蜜| 亚洲午夜影视影院在线观看| 看电影不卡的网站| 不卡的电影网站| 欧美喷水一区二区| 亚洲国产高清不卡| 午夜久久久久久| 国产精品一区二区免费不卡| 91丨九色丨国产丨porny| 欧美日韩精品免费| 欧美激情在线一区二区| 亚洲成人精品影院| 国产精品996| 在线观看免费亚洲| 国产午夜精品在线观看| 夜夜嗨av一区二区三区中文字幕| 日本成人在线电影网| 国产福利精品一区| 欧美综合视频在线观看| 久久综合资源网| 亚洲在线免费播放| 久久国产精品色| 色婷婷综合久色| 久久九九久精品国产免费直播| 亚洲国产日日夜夜| 国产成人精品午夜视频免费| 制服丝袜成人动漫| 中文字幕字幕中文在线中不卡视频| 亚洲一区二区三区四区五区黄| 国产成人av电影免费在线观看| 91精品国产欧美一区二区18| 国产精品女同互慰在线看| 久久国产成人午夜av影院| 成人免费视频网站在线观看| 精品国产123| 久久精品国产一区二区三| 色欲综合视频天天天| 91麻豆精品久久久久蜜臀| √…a在线天堂一区| 成人性色生活片| 精品欧美乱码久久久久久1区2区| 亚洲成人1区2区| 91在线一区二区| 国产精品久久久久一区二区三区 | 亚洲123区在线观看| 99久久久久久| 欧美国产丝袜视频| 国产成人精品aa毛片| 欧美精品一区男女天堂| 亚洲成人免费在线| 欧美日韩精品综合在线| 夜夜爽夜夜爽精品视频| www.日韩精品| 国产精品久久综合| 国产福利91精品一区二区三区| 91精品国产福利在线观看| 亚洲激情av在线| 色老头久久综合| 综合分类小说区另类春色亚洲小说欧美 | 日韩亚洲欧美一区二区三区| 日韩在线一区二区三区| 欧美日韩你懂得| 亚洲蜜臀av乱码久久精品蜜桃| 国产99久久久国产精品免费看| 日韩欧美三级在线| 国产黄色91视频| 中文字幕精品一区二区三区精品| 国产激情一区二区三区四区 | 高清成人免费视频| 日本特黄久久久高潮| 99re热这里只有精品视频| 五月婷婷久久丁香| 久久精品亚洲一区二区三区浴池| 欧美亚洲丝袜传媒另类| 国产一区二区三区观看| 激情综合色播五月| 成人永久aaa| 国产很黄免费观看久久| 91麻豆精品国产91久久久使用方法 | 中文字幕av免费专区久久| 成人黄色在线看| 亚洲精品中文在线影院| 欧美一区二区三区不卡| 蜜桃一区二区三区在线观看| 中文字幕欧美三区| 欧美色手机在线观看| 国产自产v一区二区三区c| 国产精品国产三级国产三级人妇| 欧美日韩一区二区欧美激情| 精品一区二区三区在线播放视频| 国产精品麻豆久久久| 6080yy午夜一二三区久久| 国产精品主播直播| 一区二区三区在线视频观看 | 国产精品77777竹菊影视小说| 国产精品视频第一区| 欧美日韩高清影院| av男人天堂一区| 美女视频网站久久| 综合欧美一区二区三区| 欧美大片日本大片免费观看| 成人av在线一区二区三区| 热久久免费视频| 亚洲综合清纯丝袜自拍| 久久免费偷拍视频| 欧美三级中文字| 99久久精品国产麻豆演员表| 天天亚洲美女在线视频| 国产精品成人一区二区三区夜夜夜 | 日本怡春院一区二区| 中文字幕精品三区| 2欧美一区二区三区在线观看视频| 在线视频欧美区| 成人app网站| 久99久精品视频免费观看| 亚洲成人黄色小说| 亚洲男人的天堂一区二区| 国产欧美一区二区三区网站 | 国产最新精品免费| 五月天国产精品| 亚洲成人一区在线| 亚洲欧美另类小说视频| 国产精品午夜春色av| 日韩精品一区二区三区蜜臀| 欧美欧美午夜aⅴ在线观看| 91美女片黄在线观看91美女| 成人高清免费观看| 国产寡妇亲子伦一区二区| 狠狠色丁香婷婷综合| 老司机精品视频在线| 捆绑紧缚一区二区三区视频| 蜜臀av性久久久久蜜臀aⅴ流畅| 蜜臀久久99精品久久久画质超高清| 亚洲成人av在线电影| 午夜精品影院在线观看| 午夜精品久久久久久久久久久 | 久久不见久久见中文字幕免费| 午夜精品久久久久久久久久| 亚洲高清在线视频| 亚洲夂夂婷婷色拍ww47| 舔着乳尖日韩一区| 99久久免费视频.com| 国产99久久久精品| av在线免费不卡| 色综合天天综合给合国产| 波多野结衣在线一区| 成人综合在线观看| 色综合久久久久网| 欧美三级视频在线观看 | 国产日本亚洲高清| 国产精品每日更新| 亚洲免费观看在线观看| 亚洲一区自拍偷拍| 久久成人久久鬼色| 成人h精品动漫一区二区三区| 欧美中文字幕一区二区三区亚洲 | 精品视频免费看|