O codigo abaixo mostra com plotar dados de um arquivo NetCDF em um mapa usando Python.# -*- coding: utf-8 -*-__author__ = "Marcelo Rodrigues"__credits__ = ["Aurelio Noronha", "Fco Vasconcelos", "Arthur Costa"] __license__ = "GPL"__version__ = "1.0"__email__ = "marcelorodriguesss@gmail.com"from scipy.io import netcdffrom mpl_toolkits.basemap import Basemapfrom matplotlib import colors as cimport matplotlib.pyplot as pltimport numpy as npprate_file = "pcp.nc"prate_data = netcdf.netcdf_file(prate_file, 'r')# print(prate_data.variables)lon = prate_data.variables['longitude'][:]lat = prate_data.variables['latitude'][:]time = prate_data.variables['time'][:]pcp = prate_data.variables['pcp'][:]m = Basemap(projection='cyl', llcrnrlat=lat[1], urcrnrlat=lat[-2], llcrnrlon=lon[1], urcrnrlon=lon[-2], resolution='h')my_colors = ('#b43214', '#f05a32', '#ff9141', '#ffd750', '#fff0b4', '#e6ffe6', '#aae6b4', '#6ee66e', '#06be0a', '#058c00', '#005000', '#002300')lons, lats = np.meshgrid(lon, lat)x, y = m(lons, lats)clevs = (0., 200., 400., 600., 800., 1000., 1200., 1400., 1600., 1800., 2000.)bounds = clevsmy_cmap = c.ListedColormap(my_colors)cs = plt.pcolormesh(x-2.8125/2., y-2.8125/2., pcp[0, :, :], cmap=my_cmap)m.drawparallels(np.arange(-90., 90., 30.), labels=[1,0,0,0], linewidth=0., fontsize=10)m.drawmeridians(np.arange(0., 360., 40.), labels=[0,0,0,1], linewidth=0., fontsize=10)m.drawcountries(linewidth=0.5)m.drawcoastlines(linewidth=0.5)# m.drawstates(linewidth=0.5)bar = m.colorbar(cs, location='bottom', pad="8%", ticks=clevs, boundaries=bounds, spacing='uniform', extendfrac='auto')plt.title('Acumalated Precipitation')figname = 'accum_precip.png'print('Salvando figura:', figname)# plt.show()plt.savefig(figname)plt.close() Passo 1Verifique se o Python2.6 esta instalado no sistema usando o comando abaixo:$ python2.6Devera aparecer algo como:Para sair digite:quit()Como usuario administrador do sistema instale os pacotes abaixo:# aptitude update# aptitude install python-numpy python-scipy libpython2.6 libcurl3 python-qt4Passo 2Use o comando 'uname' para verificar a arquitetura do seu sistema: $ uname -m32 bits - i68664 bits - x86_64Depois, faca download dos pacotes do PyFerret usando os comandos abaixo conforme a arquitetura do seu sistema:32 bits:$ cd ~$ wget ftp://ftp.pmel.noaa.gov/ferret/pub/pyferret/pyferret_environment-0.0.9.tar.gz$ wget ftp://ftp.pmel.noaa.gov/ferret/pub/pyferret/pyferret_executables-0.0.9-Ubuntu-10.10-32.tar.gz$ wget ftp://ftp.pmel.noaa.gov/ferret/pub/data/fer_dsets.tar.gzou64 bits:$ cd ~$ wget ftp://ftp.pmel.noaa.gov/ferret/pub/pyferret/pyferret_environment-0.0.9.tar.gz$ wget ftp://ftp.pmel.noaa.gov/ferret/pub/pyferret/pyferret_executables-0.0.9-Ubuntu-10.10-64.tar.gz$ wget ftp://ftp.pmel.noaa.gov/ferret/pub/data/fer_dsets.tar.gzPasso 3Crie os diretorios /home/usuario/pyferret e /home/usuario/pyferret/fer_dsets$ cd ~$ mkdir -p ~/pyferret/fer_dsetsMova os arquivos do PyFerret conforme o exemplo abaixo:$ cd ~$ mv pyferret_environment-0.0.9.tar.gz pyferret_executables-0.0.9-Ubuntu-10.10-32.tar.gz ~/pyferret$ mv fer_dsets.tar.gz ~/pyferret/fer_dsetsExtraia os arquivos usando o comando 'tar':$ cd ~/pyferret$ tar -xzvf pyferret_environment-0.0.9.tar.gz$ tar -xzvf pyferret_executables-0.0.9-Ubuntu-10.10-32.tar.gz$ cd ~/pyferret/fer_dsets$ tar -xzvf fer_dsets.tar.gzPasso 4Para configurar o PyFerret entre no diretorio ~/pyferret/bin e faca uma copia do arquivo ferret_paths_template.sh:$ cd ~/pyferret/bin$ cp ferret_paths_template.sh ferret_paths.shEm seguida edite o arquivo ~/pyferret/bin/ferret_paths.sh com seu editor de texto preferido e mude a variavel FER_DIR=/usr/local/ferret para FER_DIR=/home/usuario/pyferret$ vim ~/pyferret/bin/ferret_paths.shEdite o arquivo ~/.bashrc ($ vim ~/.bashrc) e adicione ao final do arquivo a linha abaixo: source ~/pyferret/bin/ferret_paths.shExecute o comando abaixo para recarregar as variaveis de ambiente do sistema:$ source ~/.bashrcPasso 5Baixe o arquivo shapefile.py e salve dentro do diretorio ~/pyferret/lib/python2.6/site-packages$ cd ~/pyferret/lib/python2.6/site-packages$ wget http://pyshp.googlecode.com/svn/trunk/shapefile.pyPasso 6Baixe o arquivo toolsUI-4.1.jar e salve dentro do diretorio ~/pyferret/lib/$ cd ~/pyferret/lib/$ wget http://bit.ly/11Q6d5w$ mv 11Q6d5w toolsUI-4.1.jarPronto!Agora basta digitar no terminal: pyferret.sh$ pyferret.shDica!Passo 7O PyFerret possui as mesma funcoes do Ferret e ainda vem com varias funcoes do Python2.6. Umas dessas funcoes e o suporte a plotar graficos e mapas com alta resolucao. Para isso basta incluir as linhas abaixo no inicio do script:set graphics highset win /size=4.0 1! A linha abaixo substitui o -gif no PyFerretset graphics unmappedAgradecimentos ao +Paulo Henrique pelas dicas no PyFerret. O Grid Analysis and Display System (GrADS) e uma ferramenta de trabalho interativa para facilitar o acesso, manipulacao e visualizacao de dados de ciencias da terra. O Projeto OpenGrADS procura desenvolver interfaces avancadas e extensoes baseadas no motor principal do GrADS.GrADS: http://grads.iges.org/grads/OpenGrADS: http://opengrads.org/Tutorial tambem disponivel no link abaixo para a plataforma Windows:http://www.unixlike.com.br/2014/09/instalando-o-opengrads-no-windows-7.htmlInstalacao no Linux:Passo 1Faca download do OpenGrADS (http://opengrads.org/) e salve