How to plot Shear-wave splitting measurements using PyGMT

Utpal Kumar   2 minute read      

How you can plot the shear-wave splitting measurements from splitting database using PyGMT.

You can easily obtain the SKS splitting measurements from the Shear-wave splitting data base. In this post, I will show you how you can do the custum plot of these measurements.

First step is to download and save the splittingDB.txt in your local directory.

Plot shear-wave splitting measurements for arbitrarily selected region

We can read the database using pandas:

import pygmt
import numpy as np
import pandas as pd

df = pd.read_csv('splittingDB.txt', sep='|', encoding='latin1')
df.dropna(inplace=True)
df['Latitude'] = pd.to_numeric(df['Latitude'], errors='coerce')
df['Longitude'] = pd.to_numeric(df['Longitude'], errors='coerce')
df['phi'] = pd.to_numeric(df['phi'], errors='coerce')
df['dt'] = pd.to_numeric(df['dt'], errors='coerce')

We select arbitrary region for plotting the measurements. Then we extract the

minlon, maxlon = -132.89, -66.09
minlat, maxlat = 22.62, 51.64
dftmp1 = df[(minlon < df['Longitude']) & (df['Longitude'] < maxlon)]
dfselected = dftmp1[(minlat < df['Latitude']) & (df['Latitude'] < maxlat)]
dfselected.reset_index(inplace=True)
print(dfselected.head())
   index  id Station  Latitude  Longitude   phi    dt  refID Phase pmax pmin dtmax dtmin remark
0      4   4     LAC     34.39    -116.41 -54.0  1.20      0   SKS                             
1      5   5     LON     46.75    -121.81  84.0  1.00      0   SKS   11        0.2             
2      6   6     MNV     38.43    -118.15  75.0  0.90      0   SKS                             
3      9   9    RSCP     35.59     -85.57  59.0  0.75      0   SKS    6       0.15             
4     11  11    RSNY     44.55     -74.53  74.0  0.90      0   SKS    5       0.15 

Finally, we can plot the measurements using the plot_splitting_map function defined below.

plot_splitting_map(dfselected, boxcoordinates=[
                   minlon, maxlon, minlat, maxlat], dcoord=0.5, dtscale=0.2, penwidth="0.5p",
                   proj="M10c", figname='splitting_map.png', frame=["a5f1", "WSen"],
                   markersizescale=0.1)
Shear wave splitting measurements of North America from SKS database
Shear wave splitting measurements of North America from SKS database

Topographic splitting map of Germany

# germany
minlon, maxlon = 4.26, 17.00
minlat, maxlat = 45.14, 54.92
dftmp1 = df[(minlon < df['Longitude']) & (df['Longitude'] < maxlon)]
dfselected = dftmp1[(minlat < df['Latitude']) & (df['Latitude'] < maxlat)]
dfselected.reset_index(inplace=True)
plot_splitting_map(dfselected, boxcoordinates=[
                minlon, maxlon, minlat, maxlat], dcoord=0.5, dtscale=0.5, penwidth="0.5p",
                proj="M10c", figname='splitting_map.png', frame=["a5f1", "WSen"],
                markersizescale=0.1, colormap="topo", markercolormap="jet")
Topographic Shear wave splitting measurements from SKS database of Germany
Topographic Shear wave splitting measurements from SKS database of Germany

Shear-wave splitting function

References

  1. Kumar, U., C. P. Legendre, and B. S. Huang (2021). Crustal structure and upper mantle anisotropy of the Afar triple junction, Earth, Planets Sp. 73, no. 1, 166, doi: 10.1186/s40623-021-01495-0.
  2. Wüstefeld, A.; Bokelmann, G. H. R.; Barruol, G.; Montagner, J.-P. (2009) “Identifying global seismic anisotropy patterns by correlating shear-wave splitting and urface waves data” , Phys. Earth Planet. Int, 176 (3-4), 198-212, doi:10.1016/j.pepi.2009.05.006 (database available online at http://splitting.gm.univ-montp2.fr/DB)
  3. Kumar, Utpal, & Legendre, Cédric P. (2021, January 16). STADIUM-Py: Python Command-line Interface for automated Receiver Functions and Shear-Wave Splitting Measurements (Version 1.0). Zenodo. http://doi.org/10.5281/zenodo.4686103

Disclaimer of liability

The information provided by the Earth Inversion is made available for educational purposes only.

Whilst we endeavor to keep the information up-to-date and correct. Earth Inversion makes no representations or warranties of any kind, express or implied about the completeness, accuracy, reliability, suitability or availability with respect to the website or the information, products, services or related graphics content on the website for any purpose.

UNDER NO CIRCUMSTANCE SHALL WE HAVE ANY LIABILITY TO YOU FOR ANY LOSS OR DAMAGE OF ANY KIND INCURRED AS A RESULT OF THE USE OF THE SITE OR RELIANCE ON ANY INFORMATION PROVIDED ON THE SITE. ANY RELIANCE YOU PLACED ON SUCH MATERIAL IS THEREFORE STRICTLY AT YOUR OWN RISK.


Leave a comment