Vou colar aqui embaixo um código comentado para isso:
* abre o arquivo, prepara a tela e da as coordenadas do ponto
'open arquivo.ctl'
'set display color white'
'clear'
lat=-22
lon=-42
'set lat 'lat
'set lon 'lon
* prepara o ambiente do GrADS
'set z 1'
'set dfile 1'
'set t 1 169'
'set parea .4 8.25 .2 1.9'
* busca o maximo e o intervalo dos dados
* (o minimo e o maximo de sinal trocado)
'set gxout stat'
'd mag(u,v)'
rec=sublin(result,9)
say "rec "rec
maximo=subwrd(rec,6)
say "maximo "maximo
intervalo=subwrd(rec,7)
say "intervalo "intervalo
intervalo=intervalo*2
*configuracoes da magnitude do vento
'set gxout line'
'set vrange 0 ' maximo
'set cmark 0'
'set cthick 10'
'set cstyle 1'
'set ccolor 1'
'set ylint 'intervalo
*da display da magnitude do vento
'set grads off'
'd mag(u,v)'
* aqui que eh importante! detalhe no set lev abaixo.
* com este set lev variando em torno de 1, o GrADS
* acha que existem 3 pontos: o lev .99, 1 e 1.01. com
* esses tres pontos ja e possivel plotar vetores para
* cima e para baixo na tela.
'set lev .99 1.01'
* o exemplo acima esta em coordenadas de massa (WRF,
* por exemplo). se fosse em coordenada de pressão,
* ficaria algo como 'set lev 950 1050',
* deixando 1000hPa no centro
*configuracoes do vetor
'set cthick 10'
'set ylab off'
'set xlab off'
'set frame off'
'set gxout vector'
'set ccolor 12'
'set arrlab off'
*display do vetor
'set grads off'
'd u;v'
*processos finais e geracao de um arquivo PNG
'set ylab on'
'set xlab on'
'set frame on'
'printim meteo.png'
'quit'
Atenção, pois sem o set lev variando, o GrADS entende o problema como unidimensional e não plota o vetor.
Nenhum comentário:
Postar um comentário