# Carregando biblioteca para manipular arquivos netCDF
library(maps)
library(RNetCDF)
library(fields)
#==========================================================================
# carregando arquivo e lendo dados - para essa versão do R usa-se o comando
# lendo coordenadas espaço-temporal
#=========================================================================
# lendo dados coluna total de Ozônio
ColumnAmountO3 <- var.get.nc( dados, 'ColumnAmountO3' )
# dimensoes da variavel ColumnAmountO3
dims_ColumnAmountO3 <- dim(ColumnAmountO3)
# tornando o arranjo 3D (ColumnAmountO3) em um 2D, organizado em ptos de grade X tempo
dim(ColumnAmountO3) <- c( dims_ColumnAmountO3[1]*dims_ColumnAmountO3[2], dims_ColumnAmountO3[3] )
# calculando a média e retornado-a em 2D
media_ColumnAmountO3 <- rowMeans( ColumnAmountO3)
dim(media_ColumnAmountO3) <- c( dims_ColumnAmountO3[1], dims_ColumnAmountO3[2] )
#==========================================================================================================
# longitude varia de 0 a 360, convertendo para -180 a 180, essa conversão é feita para plotagem sobre o mapa
for (i in 1:dim(lon)) { if (lon[i]>180) { lon[i] <- lon[i]-360 } }
# criando arquivo PNG que receberá o campo com o mapa
#png( filename="campo_medio_O3_jan2005.png",width=600,height=800 )
# plotando mapa da America do Sul
map( xlim=c(-110,-10), ylim=c(-60,10) )
map.axes() # plotando eixos
title( main="Campo médio de Ozônio Novembros" ) # título do gráfico
# definindo intervalo de 5 Dobson Units (DU)
intervalos = seq( trunc(min(ColumnAmountO3)), trunc(max(ColumnAmountO3)), 5 )
# adicionando campo de pressao ao nivel medio do mar ao mapa
# ler mais a respeito da função contour() com help(contour)
contour( sort(lon), lat, media_ColumnAmountO3[ order(lon), ], add=T, levels=intervalos, lwd=2, labcex=1.2, col="black" )
# fechando arquivo PNG
#dev.off()
Desde já agradeço