getStation | R Documentation |
The getStation
method obtains station metadata from the IRIS DMC station web service
and returns it in a dataframe.
getStation(obj, network, station, location, channel, starttime, endtime, includerestricted, latitude, longitude, minradius, maxradius)
obj |
|
network |
character string with the two letter seismic network code |
station |
character string with the station code |
location |
character string with the location code |
channel |
character string with the three letter channel code |
starttime |
POSIXct class specifying the starttime (GMT) |
endtime |
POSIXct class specifying the endtime (GMT) |
includerestricted |
optional logical identifying whether to report on restricted data |
latitude |
optional latitude used when specifying a location and radius |
longitude |
optional longitude used when specifying a location and radius |
minradius |
optional minimum radius used when specifying a location and radius |
maxradius |
optional maximum radius used when specifying a location and radius |
The getStation
method utilizes the station web service to obtain data for all stations that meet the criteria defined by the arguments
and returns that data in a dataframe. Each row of the dataframe represents a unique station.
Each of the arguments network
, station
, location
or channel
may contain
a valid code or a wildcard expression, e.g. "BH?" or "*". Empty strings are converted to "*".
Otherwise, the ascii string that is used for
these values is simply inserted into the web service request URL.
For more details see the web service documentation.
A dataframe with the following columns:
network, station, latitude, longitude, elevation, sitename, starttime, endtime
Rows are ordered by network-station
.
Jonathan Callahan jonathan@mazamascience.com
The IRIS DMC station web service:
https://service.iris.edu/fdsnws/station/1/
This implementation was inspired by the functionality in the obspy get_stations() method.
https://docs.obspy.org/packages/autogen/obspy.clients.fdsn.client.Client.get_stations.html
IrisClient-class
# Open a connection to IRIS DMC webservices iris <- new("IrisClient") # Date of Nisqually quake starttime <- as.POSIXct("2001-02-28",tz="GMT") endtime <- starttime + 2*24*3600 # Use the getEvent web service to determine what events happened in this time period result <- try(events <- getEvent(iris,starttime,endtime,6.0)) if (inherits(result,"try-error")) { message(geterrmessage()) } else { events # biggest event is Nisqually eIndex <- which(events$magnitude == max(events$magnitude)) e <- events[eIndex[1],] # Which stations in the US network are within 5 degrees of the quake epicenter? result <- try(stations <- getStation(iris,"US","*","*","BHZ",starttime,endtime, lat=e$latitude,long=e$longitude,maxradius=5)) if (inherits(result,"try-error")) { message(geterrmessage()) } else { stations } }
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.