Sugiro que você forneça o feedback acerca das sugestões que recebe na lista. Assim, podemos saber qual solução funcionou e o material fica útil pra referência futura. Dentro das suas possibilidades, avalie a possibilidade de postar o script final com a solução que você produziu.
map( xlim=c(-100,-10), ylim=c(-60,10))
map.axes()
contour(lon, lat, media_ColumnAmountO3, add=T, levels=intervalos, lwd=2, labcex=1.3, col=heat.colors(14) )
# Transpose + flip pra matriz corresponder ao que você vê plotado na tela com contour(), filled.countour()
tmp <- (t(media_ColumnAmountO3)[ncol(media_ColumnAmountO3):1,])
# Verificando...
tmp[1:3, 1:4] # UL
tmp[1:3, 127:130] # UR
tmp[68:70, 1:4] # LL
tmp[68:70, 127:130] # LR
as.vector(tmp[1:3, 1:4]) ### by columns - upper left
grid <- expand.grid(x=lon, y=lat)
head(grid[order(grid$x, rev(grid$y)),]) # by columns
teste <- cbind(grid[order(grid$x, rev(grid$y)),], z=as.vector(tmp))
head(teste, 3)
# x y z
# 8971 -119.5 9.5 245.2939
# 8841 -119.5 8.5 244.0713
# 8711 -119.5 7.5 242.9422
tail(teste, 3)
# x y z
# 390 9.5 -57.5 296.8890
# 260 9.5 -58.5 297.0280
# 130 9.5 -59.5 296.6809
write.table(teste,file="teste.txt",row.names=TRUE, sep="", quote=FALSE)
### </code>