quarta-feira, 11 de agosto de 2010

PSBASEMAP Parte 2

0 comentários

Projeção cartesiana de tempo –JXT/t

        Freqüentemente se faz necessária a produção de um gráfico de uma variável em função do tempo. Para essa finalidade existe a projeção cartesiana de tempo, onde podemos utilizar um eixo para a passagem de tempo, em geral “eixo x”, e outro eixo para uma variável genérica, em geral o “eixo y”. Nos exemplos abaixo utilizaremos somente o “eixo x” a fim de explicar a notação de tempo.
Primeiro exemplo:
gmtset PLOT_DATE_FORMAT -o ANNOT_FONT_SIZE_PRIMARY +9p TIME_LANGUAGE BR
psbasemap -R2010-6-1T/2010-8-1T/0/1 -JX6T/0.2 -Bpa7Rf1d -Bsa1OS -P > exemplotempo1.ps
Note que a formatação dos parâmetros –R e –B está diferente. Em –R foi utilizado 2010-6-1T/2010-8-1T/0/1, isto indica que o eixo começara no dia 1º de junho e termina no dia 1º de agosto, além disso, foi adicionado o”T” para indicar que se trata de tempo. Em –B foram utilizadas novas opções além das já conhecidas “a”, “f” e “g”. São as seguintes:


Segundo exemplo:
gmtset TIME_LANGUAGE BR
gmtset PLOT_CLOCK_FORMAT hh:mm ANNOT_FONT_SIZE_PRIMARY +9p
psbasemap -R2010-8-11T/2010-8-13T/0/1 -JX8t/0.2 -Bpa6Hf1h -Bsa1KS -P -K > exemplotempo2.ps
gmtset PLOT_DATE_FORMAT "o dd" ANNOT_FONT_SIZE_PRIMARY +9p
psbasemap -R -JX -Bpa6Hf1h -Bsa1DS -O -Y0.65i >> exemplotempo2.ps
Na fgura de baixo utilizamos como anotação, os dias da semana a1K e no exemplo de cima a data a1D. Note que na anotação de horario foram usados somente horas e minutos, PLOT_CLOCK_FORMAT hh:mm e que na anotação da data foram usados o nome do mês e os dígitos do dia do mês PLOT_DATE_FORMAT “o dd”.

Terceiro exemplo:
gmtset TIME_LANGUAGE BR
gmtset PLOT_DATE_FORMAT o TIME_FORMAT_PRIMARY Character
psbasemap -R2008T/2010T/0/1 -JX8T/0.2 -Bpa3Of1o -Bsa1YS -P 
> exemplotempo3.ps
Este exemplo apresenta um intervalo de dois anos ambos com anotações a cada três meses. O comando do gmtset PLOT_FORMAT_PRIMARY Character determinou que os nomes dos meses fossem abreviados com sua letra inicial.

Quarto exemplo:
gmtset PLOT_CLOCK_FORMAT -hham
psbasemap -R0t/0.25t/0/1 -JX-10/0.2 -Bpa15mf5m -Bsa1HS -P
> exemplotempo4.ps
Este exemplo apresenta o intervalo de algumas horas de um dia, perceba que o tempo corre da direita para a esquerda por causa do sinal negativo usado na dimensão do eixo x.

Quinto exemplo:
gmtset PLOT_DATE_FORMAT u TIME_FORMAT_SECONDARY full TIME_LANGUAGE BR
psbasemap -R2010-9-11T/2010-9-29T/0/1 -JX8t/0.2 -Bpa1K -Bsa1US -P -K > exemplotempo5.ps
gmtset PLOT_DATE_FORMAT o TIME_WEEK_START Sunday
gmtset TIME_FORMAT_PRIMARY Char TIME_LANGUAGE BR
psbasemap -R2010-9-8T/2010-9-29T/0/1 -JX8t/0.2 -Bpa3Kf1k -Bsa1rS -O -Y0.65i >> exemplotempo5.ps

            Este quinto exemplo mostra um intervalo de tempo de algumas semanas, sendo a figura de cima com um intervalo de semanas com a semana começando no domingo. Comando do gmtset: TIME_WEEK_START Sunday.
Já a próxima figura apresenta o mesmo intervalo de tempo, mas com anotações a cada dia da semana abreviados e as semanas marcadas com números.

Sexto exemplo:
gmtset PLOT_DATE_FORMAT "o yy" TIME_FORMAT_PRIMARY Abbreviated TIME_LANGUAGE BR
psbasemap -R1996T/1996-6T/0/1 -JX10T/0.2 -Ba1Of1dS -P > exemplotempo6.ps 


O sexto exemplo nos mostra o intervalo de tempo dos cinco primeiros meses de 2010, sendo que as anotações são de mês em mês com os nomes abreviados adicionados dos dois dígitos do ano.

Sétimo exemplo:
gmtset PLOT_DATE_FORMAT jjj TIME_INTERVAL_FRACTION 0.05
psbasemap -R2000-12-15T/2001-1-15T/0/1 -JX8T/0.2 -Bpa5Df1d -Bsa1YS -P > exemplotempo7.ps

           O sétimo e último exemplo nos mostra uma ilustração dos 15 últimos dias de 2000 e 15 primeiros dias de 2001 com anotação principal dos dias do ano e secundária do ano.

Agora que aprendemos como utilizar as variadas escalas de tempo. Criaremos um gráfico utilizando a escala de tempo no eixo x e outra dimensional no eixo y utilizando o script abaixo:
gmtset PLOT_DATE_FORMAT -o ANNOT_FONT_SIZE_PRIMARY +9p
gmtset CHAR_ENCODING ISOLatin1+ TIME_LANGUAGE BR
psbasemap -R2008-1-1T/2008-2-1T/-20/0 -JX15/10 -Bpa7Rf1d/a2f10S -Bsa1O/a2f10:" Temperatura M\351dia em \260C":SW -P > psbasemap2.ps

Por enquanto é isso, no próximo post entrarei no mérito das projeções de mapas!
Até mais!

Leia mais...

PSBASEMAP Parte 1

0 comentários

O PSBASEMAP  é o responsável por criar um código postscript que produz a borda das ilustrações geradas com o GMT. Apesar de seu uso não ser obrigatório, uma vez que é possível produzir a borda das ilustrações usando os demais comandos, é recomendável sempre utilizá-lo para tal fim de modo a permitir possíveis alterações nas configurações do GMTDEFAULT.
Além de gerar a base da ilustração que você deseja fazer, com o PSBASEMAP podemos adicionar escalas -L, definir a cor do fundo -G, definir a área a ser utilizada no mapa -R, o tipo de projeção utilizada -J, adicionar eixos e anotações -B ou mesmo para desenhar uma rosa dos ventos -T, definir a posição da ilustração gerada -X/-Y entre outras opções. 
Sintaxe básica:  
psbasemap -R,-J mais pelo menos UMA dessas opções obrigatoriamente -B,-G,-L,-T, 
onde: 


-R: Define a área a ser focada na ilustração ou do mapa.
Sintaxe básica:    -Rxmin/xmax/ymin/ymax/zmin/zmax
Podendo ser em números decimais (e.g., -147.456710) ou em graus minutos e segundos [graus:minutos:segundos][W|E|S|N]} (e.g., 123:45:35W ou -123:45:35).Pode-se também usar os atalhos –Rg para –R0/360/-90/90 e –Rd para –R-180/180/-90/90.  


-B: Define as marcações, anotações e nomes de cada eixo, além de definir o 
título e quais eixos serão mostrados na ilustração. 
Sintaxe básica:  
  -B[p/s][eixox/eixoy/eixoz][:.”Título”:][W|w][S|s][E|e][N|n]ou[Z|z], 
onde [p/s] correspondem a anotação principal e secundária respectivamente. 

Para cada eixo teremos as seguintes regras:  
a[x] – define o intervalo em que serão anotadas as marcações do eixo. 
f [x] – define o intervalo das marcações do eixo. 
g[x] – define o intervalo em que será desenhada a grade. 
Nas anotações [W|w][S|s][E|e][N|n]ou[Z|z] a letra maiúscula serve para indicar que o eixo será marcado e anotado, enquanto que a letra minúscula indica apenas marcação e caso seja suprimido de algum o eixo, o mesmo não terá anotação alguma. 


-E: Define o ponto de vista, azimute e elevação da figura em visões em perspectiva. 
Sintaxe básica:  
-E[grau do azimute]/[grau da elevação] 


 -J: Define o tipo de projeção a ser utilizada:  


-Jz: Define um eixo em z.
Sintaxe básica
-Jz[relação do eixo z com os demais] 




Projeção Cartesiana Linear


Sintaxe básica:

-JX[tamanho do eixo x]/[tamanho do eixo y]

Abaixo  segue um exemplo de imagem gerada utilizando-se apenas o psbasemap e seus respectivos parâmetros comentados a projeção utilizada foi a Cartesiana Linear.


psbasemap -R0/10/0/10/0/10 -JX10 -Jz0.5 -Glightblue -Bpa1f0.5g2:"eixo-x":/a1f0.5g2:"eixo-y":/a1f0.5g2:"eixo-z":WeSnZ -E210/30 > psbasemap.ps


Detalhes de cada parâmetro usado:


-R0/10/0/10/0/10 – Área representada no gráfico 


-JX10/10 – Projeção adotada: linear “X”


-Jz0.5 – Indica que foi adicionado um eixo em “z” com a metade dos demais eixos. 


-Glightblue – Cor do fundo da ilustração.


-Bpa1f0.5g2:"eixo-x":/a1f0.5g2:"eixo-y":/a1f0.5g2:"eixo-z":WeSnZ – Este talvez seja o parâmetro mais complicado e por que não, CHATO de se explicar. Para todos os eixos foi usado a1f0.5g2 que indica marcações a cada meia unidade, anotações a cada uma e grade a cada duas unidades de medida. WeSnZ indica que todos os eixos foram marcados mas somente os eixos W, S e Z foram anotados.


-E210/30 – Inclinação de 210º e elevação de 30º. 


Aproveitem para exercitar a criatividade criando figuras utilizando o script dado acima como ponto de partida alterando os valores dos parâmetros...


Boa Sorte!

Leia mais...

Principais argumentos das linhas de comendo

0 comentários


Cada programa no GMT requer argumentos específicos para a sua operação. Eles serão explicados à medida que abordarmos os programas que os utilizam, mas existem alguns argumentos que são universais, ou seja, possuem a mesma função independentemente do programa do GMT que você estiver utilizando.
     Para tentar facilitar a memorização da função de cada argumento os criadores do GMT resolveram escolher as letras do alfabeto para identificá-los.
     Cada argumento começa geralmente com um hífen seguido por uma letra, na maioria das vezes maiúscula, e as vezes um número ou caractere imediatamente após a letra. Não se deve utilizar espaço entre o hífen e a letra, utilize espaço apenas para separar os argumentos.
Exemplo:

      psbasemap -R0/20/0/20 -Ggray -JM6i -Wthin -Ba2f1 -V -P > borda.ps

     Abaixo segue a lista dos 13 principais argumentos universais do GMT, note que nem todos são letras maiúsculas e as vezes nem letras são...

-B Define a marcações, anotações e etiquetas para os eixos de um gráfico ou borda de um mapa, além do título da ilustração gerada.

-H Serve para indicar ao GMT que um arquivo de dados possui um cabeçalho.

-J Seleciona o tipo de projeção a ser utilizada.

-K Como já foi explicado anteriormente, deve ser utilizado para dar continuidade ao script com outra linha de comando.

-O Assim como o -K, também já foi explicado. Serve para que a ilustração criada pela linha de comando seja acrescentada à ilustração da linha anterior.

-P Seleciona a orientação da página como sendo portrait (retrato, ou seja uma folha A4 em pé). A orientação default é a landscape (paisagem, ou seja folha A4 deitada).

-R Define a região ou extensão do mapa/ilustração a ser criada.

-U Serve para "datar" uma ilustração.

-V É o chamado "verbose mode" serve para avisar o progresso e possíveis erros durante a execução dos programas do GMT. Caso não o utilize o programa rodará "silenciosamente" e você pode não detectar possíveis erros. Recomendo utilizá-lo sempre.

-X e -Y servem para indicar a posição onde a figura ficará na página. Por default cada posicionamento será levado em relação a uma figura anterior caso ela exista.

-c Serve para especificar o número de cópias a serem criadas.

-:  O GMT sempre trata os arquivos de dados da seguinte maneira: a primeira coluna será interpretada como informações referentes ao eixo x e a segunda como eixo y. No caso de dados geográficos o GMT espera que a primeira coluna seja a longitude (eixo x) e a segunda seja a latitude (eixo y). Para revertermos isso utilizaremos a opção -: ela fará o GMT ler a primeira coluna como eixo y e a segunda como eixo x.

     Agora que vimos os principais argumentos universais das linhas de comando vamos finalmente entrar no PSBASEMAP.

Leia mais...

terça-feira, 10 de agosto de 2010

Onde e o que baixar.

1 comentários

Uma coisa bem legal que esqueci de mencionar é que o GMT é um programa open source, ou seja é um software livre, ele pode ser baixado gratuitamente e seu código fonte é aberto e permite sofrer modificações pelo usuário.
Abaixo seguem os mirrors de download de onde eu costumo baixar as versões mais novas, todas eles são pacotes de instalação automática:
O link abaixo corresponde ao site do IAG-USP, Instituto de Astronomia e Geofísica da USP, que é o mirror oficial de distribuição do GMT para a América do Sul. Aqui você consegue baixar o GMT, assim como os manuais e os arquivos de linha de costa de maior resolução.


ftp://ftp.iag.usp.br/pub/gmt/windows/



gmt-4.5.9_install32.exe   --> Instala a versão 32-bits.

gmt-4.5.9_install64.exe   --> Instala a versão 64-bits.

gmt-4.5.9_pdf_install.exe --> Instala manuais e "livro de receitas" em formato PDF.

gshhg-2.2.2_install.exe     --> Instala linhas de costa nas resoluções alta e completa.

gawk316.zip                      --> Executável AWK,  programa de manipulação de dados em ASCII. Instale o conteúdo na pasta C:\GMT\BIN.


Aqui vai uma dica para quem não gosta muito da idéia de "entrar" no GMT pelo prompt de comando. Você pode baixar um atalho para o mesmo permitindo que você entre no GMT a partir do seu desktop. A instalação é bem simples, basta descompactar o conteúdo do arquivo baixado para a pasta C:\GMT e enviar o atalho para o desktop. Eu costumo instalar o GMT nesta mesma pasta e crio também uma pasta chamada SCRIPTS afim de organizar melhor os trabalhos no software.


http://www.4shared.com/file/132566316/d256b37b/Atalho_GMT.html


A partir de agora começarei a "destrinchar" cada programa do GMT começando pelo mais básico o PSBASEMAP, mas antes darei uma breve explicação dos argumentos universais das linhas de comando...


That's all folks! 


Leia mais...

Como funciona? Parte 2

2 comentários

Continuação da Parte 1.

      Antes de começarmos a estudar as linhas de comando devemos saber as regras básicas sobre como montar um script para o GMT. Não é obrigatório o uso de um script, pois você pode digitar diretamente no terminal as linhas de comando se quiser, mas um script bem montado ajuda muito a criação de uma figura e em caso de erro é mais fácil achá-lo.
      Um script seria um arquivo ASCII que pode ser gerado por um editor de texto como o 
Bloco de Notas do Windows, por exemplo. Nele estarão contidas as linhas de comando que serão responsáveis por gerar um mapa ou outra ilustração qualquer e criar ou modificar um arquivo de dados ou grid.
      Existem basicamente dois tipos de linhas de comando no GMT, as que criam figuras em .ps ou .eps e as que criam ou modificam arquivos de dados.
      Segue abaixo um exemplo simples de um script e figura por ele gerada:




psbasemap -R-180/180/-70/70 -JM18 -Ba60g30f60/a30g30f60 -K -Xc -Yc > script.ps
pscoast -R -J -B -W –Glightgray -O >> script.ps
      Observe que foram utilizadas as opções -K (continue) na primeira linha de comando e -O (overlay) na segunda linha. SEMPRE que você for criar um script, que tenha como resultado final uma figura, com mais de uma linha de comando no GMT, você deve utilizar essas opções obedecendo às seguintes regras, ao final da 1ª linha você deve adicionar o -K indicando que ao final desta linha o processo continuará. Nas linhas seguintes se deve adicionar o -O e o -K até que se chegue à linha final onde se deve colocar apenas a opção -O para que o processo de produção da figura seja finalizado. Não se preocupe em tentar entender agora o porque de tantos parâmetros diferentes no script acima, isto será detalhado à medida que abordarmos cada comando do GMT.
Agora um exemplo de um script que gera um grid a partir de um arquivo de dados em txt.




blockmedian bat-amazonas2.txt -R-51/-43/0/7 -I1m -V > cone.med
surface cone.med -R-51/-43/0/7 -I1m -T0.35 -V -Gcone.grd
      Como foi observado, no caso de um script que tenha como objetivo manipular ou criar grids ou arquivos de dados não é preciso utilizar as opções -K e -O e ás vezes nem mesmo o direcionador. 

Leia mais...

Como funciona? Parte 1

0 comentários

     Como foi dito anteriormente o GMT é um conjunto de ferramentas, e para a sua utilização devemos digitar o comando apropriado em um prompt ou terminal. O prompt de comando é uma janela, onde é apresentado um cursor para que sejam digitados os comandos, no nosso caso o saudoso DOS.
     Para cada comando digitado devemos apertar a tecla "Enter" , então o terminal irá executar o comando fornecido, salvando a ilustração gerada em um arquivo no formato *.ps (Postscript) ou *.eps (Encapsuled Postscript).
     Note que o programa GMT funciona da seguinte maneira, cada comando executado é sobreposto pelo comando que vem a seguir, gerando uma ilustração a partir da sobreposição de camadas geradas por cada comando utilizado.
O que seriam os comandos a serem digitados no prompt?
     Os comandos são nada mais nada menos que os programas do GMT e cada conjunto de comandos pode ser compilado em um script de modo a facilitar a sua edição, mas ATENÇÃO existem algumas regras que devemos seguir ao criar tais scripts. O script é a rotina que o sistema deve seguir a fim de criar a ilustração desejada, indicando no final de cada linha o nome do arquivo final.
     Faremos agora na Parte 1 uma revisão bem básica de DOS e na Parte 2 mostrarei as principais regras na criação de um script para o GMT.


Comandos Básicos de DOS:
     DOS (Disk Operating System) é um "sistema operacional" desenvolvido para permitir ao usuário realizar todas as funções básicas e essenciais no computador. Poucos foram os DOS produzidos até hoje: MS-DOS, da Microsoft, o PC-DOS, da IBM, DR-DOS, da Digital Research, o NOVELL, para redes, etc. O MS-DOS, pelo fato de ser o primeiro DOS do PC, domina amplamente o mercado, sendo considerado padrão. O DOS é uma forma de você comunicar suas instruções ao computador. E tais instruções devem ser as que ele reconhece. Estas instruções, na maior parte, consistem em palavras baseadas na língua inglesa.
     Para você acessar o DOS no Windows XP a maneira mais fácil é a seguinte, clicar em Iniciar >>; Todos os Programas >>; Acessórios e selecionar "Prompt de comando". Assim você acessará o DOS com o Windows ainda carregado, o que significa que alguns comandos podem não funcionar, mas já é o suficiente para a utilização do GMT sem problema algum.


     PROMPT é o chamado sinal de prontidão, pois indica que o computador está pronto para receber instruções. Ele mostra também sua localização, ou seja, em que drive (unidade de armazenamento) e diretório você está trabalhando. Veja o exemplo:


C:\DOS>__


O exemplo indica que você está no drive C:, na pasta DOS. Ao lado do sinal >, há um "tracinho" piscando, chamado CURSOR. Ele indica aonde vai aparecer os caracteres que você digitar.


Comandos Básicos:


MKDIR ou MD 
Comando que cria um diretório, no Windows os diretórios são nada mais andamenos que as pastas, a partir do diretório corrente com o nome especificado: 
Sintaxe: MD [caminho] { Nome } ou MKDIR [caminho] { Nome } 
Exemplo: 
C:\GMT>MD SCRIPTS , cria um subdiretório SCRIPTS dentro do diretório GMT.


CHDIR ou CD 
Comando que muda um subdiretório corrente a partir do diretório corrente:
Sintaxe: CD [caminho] ou CHDIR [caminho]
Exemplos:
C:\>CD GMT , alterna para o diretório GMT.
C:\>CD GMT\SCRIPTS , alterna para o subdiretório SCRIPTS do diretório GMT.
C:\GMT>CD.. , alterna para o diretório raiz (volta para C:>).
C:\>CD , indica o caminho ( PATH ) atual.


RMDIR ou RD 
Comando que remove um subdiretório a partir do drive corrente. O subdiretório somente será eliminado se não contiver nenhum arquivo ou subdiretório em seu interior: 
Sintaxe: RD [caminho] ou RMDIR [caminho] 
Exemplo: 
C:\> RD SCRIPTS , remove o diretório SCRIPTS.


DIR 
Comando que mostra a lista de arquivos de um diretório (pasta). Este comando pode conter algumas variações para obter-se uma resposta diferente: 
* /P Lista o diretório com pausa, usado quando o diretório encontra-se com vários arquivos. 
* /W Lista o diretório na horizontal. 
* /? Lista todas as opções do comando DIR. 
O comando dir apresenta, ainda, três informações bastante importantes ao seu final: o número de arquivos contidos no diretório corrente, o espaço em disco ocupado por este(s) arquivo(s) e o espaço disponível no disco.
Exemplo: 
C:\>DIR/W 
C:\>DIR/P 
C:\>DIR/?


ECHO
Exibe mensagens ou ativa/desativa o eco de mensagens. Serve também para, no nosso caso, criar um script a partir do próprio DOS.
Sintaxe: echo [mensagem] [direcionador] [arquivofinal.txt]
É importante perceber aqui a diferença e a importância do uso dos direcionadores.
Quando queremos criar um arquivo novo utilizamos apenas um sinal de maior ">;", quando queremos adicionar algo a um arquivo já existente utilizamos dois sinais de maior ">>".
Exemplo:
C:\>echo Meu primeiro script > script.txt , cria um arquivo de texto com a frase: "Meu primeiro script".
C:\>echo continuação do meu script >> script.txt , adiciona a frase: "continuação do meu script" na linha seguinte do arquivo script.txt.


CLS 
Comando que limpa a tela e deixa o cursor no canto superior esquerdo: 
Exemplo: 
C:\>CLS 


Agora que já sabemos tudo o que precisamos sobre DOS vamos às regras de criação de um script na Parte 2.
Conteúdo de DOS retirado em parte daqui.


Leia mais...

Uma breve introdução...

1 comentários

Olá a todos, meu nome é Rodrigo Arantes e sou aluno de graduação em Oceanografia pela Universidade do Estado do Rio de Janeiro. Resolvi escrever este blog devido ao grande número de pessoas com dúvidas sobre o programa GMT - Generic Mapping Tools e espero ajudá-los na medida do possível.


     O Generic Mapping Tools é um conjunto de mais de 60 comandos responsáveis por filtrar, gridar e plotar qualquer tipo de dado em uma das aproximadamente 30 projeções geográficas ou cartesianas disponíveis. Além dos programas em si, os autores incluem junto do GMT um banco de dados de linhas de costa, rios e limites políticos com cinco níveis de resoluções diferentes para a elaboração de mapas e ilustrações. Outros dados genéricos como, por exemplo, dados de batimetria, campos de pressão ou outro dado qualquer, podem ser convertidos gerando grids facilmente lidos pelo GMT.
     O programa GMT, originalmente criado para a plataforma UNIX em 1988 por Paul Wessel e Walter H. F. Smith, cresceu e ganhou versões ao longo do tempo para os principais sistemas operacionais, tais como Windows, MAC-OS e Solaris.
     Hoje o programa é usado no mundo inteiro, predominante e quase que exclusivamente por pesquisadores das ciências da Terra, devido ao seu forte apelo para visualização de dados geográficos. Mas o GMT contém ferramentas para processar e manipular dados multidimensionais tornando-o útil para outras áreas não somente a científica.
     O objetivo deste blog é ensinar os comandos básicos de cada programa do GMT, fornecer suporte a duvidas e dar exemplos de utilidades do GMT operado a partir da plataforma Windows. Embora a versão para Windows ofereça certas limitações, eu a utilizo sem problemas e os scripts que aqui serão mostrados servem basicamente para ambas as plataformas.




Leia mais...

Translate

Seguidores

Total de visualizações de página

  ©Dicas de GMT - Generic Mapping Tools - Todos os direitos reservados.

Template by Dicas Blogger | Topo