Skip to contents

Get information on meteorological sites


  site = "heathrow",
  lat = NA,
  lon = NA,
  country = NA,
  state = NA,
  n = 10,
  end.year = "current",
  provider = c("OpenStreetMap", "Esri.WorldImagery"),
  plot = TRUE,
  returnMap = FALSE



A site name search string e.g. site = "heathrow". The search strings and be partial and can be upper or lower case e.g. site = "HEATHR".


A latitude in decimal degrees to search. Takes the values -90 to 90.


A longitude in decimal degrees to search. Takes values -180 to 180. Negative numbers are west of the Greenwich meridian.


The country code. This is a two letter code. For a full listing see


The state code. This is a two letter code.


The number of nearest sites to search based on latitude and longitude.


To help filter sites based on how recent the available data are. end.year can be "current", "any" or a numeric year such as 2016, or a range of years e.g. 1990:2016 (which would select any site that had an end date in that range. By default only sites that have some data for the current year are returned.


By default a map will be created in which readers may toggle between a vector base map and a satellite/aerial image. provider allows users to override this default; see for a list of all base maps that can be used. If multiple base maps are provided, they can be toggled between using a "layer control" interface.


If TRUE will plot sites on an interactive leaflet map.


Should the leaflet map be returned instead of the meta data? Default is FALSE.


A data frame is returned with all available meta data, mostly importantly including a code that can be supplied to importNOAA(). If latitude and longitude searches are made an approximate distance, dist in km is also returned.


This function is primarily used to find a site code that can be used to access data using importNOAA(). Sites searches of approximately 30,000 sites can be carried out based on the site name and based on the nearest locations based on user-supplied latitude and longitude.

See also

getMetaLive() to download the all meta data to allow re-use and direct querying.


David Carslaw


if (FALSE) {
## search for sites with name beijing
getMeta(site = "beijing")

if (FALSE) {
## search for near a specified lat/lon - near Beijing airport
## returns 'n' nearest by default
getMeta(lat = 40, lon = 116.9)