Wiki@CSUSP

Sismologia, Sismologia, Sismologia!

Ferramentas do usuário

Ferramentas do site


seminario:23092013

Contribuições para o seminário de 23/09/2013

Script para GMT magnitude/profundidade -> Cor/Tamanho

Este script demonstra como utilizar o comando psxy junto com o AWK para graficar símbolos com cores e tamanhos definidos pelas colunas 3 e 4 de um arquivo de entrada.

Neste caso o arquivo são apenas 3 linhas onde nas colunas 1 e 2 estão as longitudes e latitudes. Na coluna 3 e 4 a profundidade e a magnitude.

Aqui os símbolos são plotados utilizando uma relação linear com a magnitude e o tamanho do símbolo, e na coluna ao lado, uma relação logarítmica entre a magnitude e o tamanho dos símbolos.

#!/bin/bash
 
## Obtem uma tabela de cores para as profundidades
## Voce pode usar qualquer tabela de cores para isso
makecpt -T0/800/150 -Cseis > color.cpt
 
## Colunas sao: Longitude Latitude Profundidade de Magnitude
## O comando AWK aplica uma formula para calcular o tamanho do 
## simbolo em referencia a magnitude
##
## A cor do simbolo vai ser dada pela tabela de cores color.cpt
## preparada anteriormente, 
 
## Usando uma escala magnitude x tamanho linear:
cat << EOF |\
  awk '{print $1, $2, $3, $4*0.2}' |\
  psxy -R-5/5/-5/5 -JX14/14 -Sc -Ccolor.cpt -Xc -Yc -K > la.ps
0 0 0 1.2
0 1 150 4.5
0 2 400 6.5
EOF
 
 
## Usando uma escala magnitude x tamanho log:
# Aqui neste caso é importante corrigir para que todas as bolinhas
# tenham um tamanho positivo. Lembre-se que o log é negativo sempre
# que o valor for menor que 1.0 por isso calculamos sempre:
# log(1+magnitude)*scale
#
cat << EOF |\
  awk '{print $1, $2, $3, 0.5*(log(1.0+$4))}' |\
  psxy -R-5/5/-5/5 -JX14/14 -Sc -Ccolor.cpt -O >> la.ps
1 0 0 1.2
1 1 150 4.5
1 2 400 6.5
EOF
 
# Apaga a tabela de cores
rm color.cpt
 
# Preview
gv la.ps
seminario/23092013.txt · Última modificação: 2013/09/23 16:47 (edição externa)