-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathexemplo6.py
43 lines (36 loc) · 1.45 KB
/
exemplo6.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import xarray as xr # versao '0.9.6'
import matplotlib.pyplot as plt # versao '2.0.2'
""" Para todas as variaveis existem dois controles, um he a distancia
do centro da celula a estacao mais proxima ("dist_nearest") e o outro
he o numero de estacoes/pluviometros dentro da celula (informacoes
ver "paper").
Aqui serao plotados os controles da grade precipitacaoo em duas
localidades, Sorriso-MT e Campinas-SP (na verdade he da
celula mais proxima a estas cidades).
"""
# lendo arquivo
path_var = '/home/alexandre/Dropbox/ParaUbuntu/netcdfgrid3/controls/'
ds = xr.open_mfdataset(path_var + 'prec_daily_UT_Brazil_v2*Control.nc', combine='by_coords')
dist_nearest = ds['dist_nearest']
count = ds['count']
# Nome dos pontos
Names = ['Sorriso-MT', 'Campinas-SP']
lat_lon = [[-12.5, -55.7],
[-22.8, -47.0],]
# plotando distancia do pluviometro mais proximo, ao longo do tempo,
# que foi utilizado na interpolacao
_, (ax1, ax2) = plt.subplots(2, 1)
for n, names in enumerate(Names):
dist_nearest.sel(latitude=lat_lon[n][0],
longitude=lat_lon[n][1],
method='nearest').plot(ax=ax1, label=names)
# número de estações que contem na célula
count.sel(latitude=lat_lon[n][0],
longitude=lat_lon[n][1],
method='nearest').plot(ax=ax2, label=names)
ax1.set_ylim(0, 150)
ax1.legend()
ax1.set_title('')
ax2.set_ylim(-1, 5)
ax2.legend()
ax2.set_title('')