NOAA ERDDAP: CoastWatch Caribbean and Gulf of America Regional Node at NOAA/AOML
Easier access to scientific data
NOAA CoastWatch OceanWatch PolarWatch NOAA AOML

ERDDAP > tabledap > Data Access Form ?This Data Access Form helps you download a subset of the data from a dataset with tabular data via the OPeNDAP protocol. In tabular datasets, the dataset is represented as a table with columns and rows. Each column (a variable) has one type of data (e.g., Sea Surface Temperature). Each row represents a different sample of the data (e.g., from a different time or location).

To download tabular data:

  1. Select (check) the variables you want to download.
  2. Specify constraints for any of the variables (not just the selected variables) to get the subset of data that you want. In most cases, you will at least specify longitude and latitude, or time constraints.
  3. For File type, choose one of the non-image file types (anything but .kml, .pdf, or .png).
This web page just simplifies the creation of tabledap URLs.
If you want, you can create these URLs by hand or have a computer program do it.
Then you don\'t have to use this form to get data. See the \'Bypass this form\' link below.

')" onmouseout="UnTip()" >
Dataset Title:  Glider Location Data. Subscribe RSS
Institution:  AOML   (Dataset ID: GLIDER_IOOS_e3be_9d42_5e92)
Information:  Summary ?Glider Location data provided by PhOD/Atlantic Oceanographic & Meteorological Laboratory (AOML). Only location and time are provided.

cdm_data_type = Point
VARIABLES:
time (seconds since 1970-01-01T00:00:00Z)
longitude (degrees_east)
WMOID
index_glider
latitude (degrees_north)
')" onmouseout="UnTip()" > | License ?"The data may be used and redistributed for free but is not intended for legal use, since it may contain inaccuracies. Neither the data Contributor, OAR, NOAA, nor the United States Government, nor any of their employees or contractors, makes any warranty, express or implied, including warranties of merchantability and fitness for a particular purpose, or assumes any legal liability for the accuracy, completeness, or usefulness, of this information.')" onmouseout="UnTip()" > | FGDC | ISO 19115 | Metadata | Background (external link) | Make a graph
 
Variable ?A tabular dataset can be thought of as a large table with rows and columns. Variables are the columns in the table. Select (check) the variables that you want included in the results table. The constraints determine which rows of data from the original table are included in the results table.')" onmouseout="UnTip()" >   Optional
Constraint #1 ?Constraints
  • These optional constraints let you specify a subset of the data.
  • The constraints determine which rows of data from the original table are included in the results table.
  • The constraints are applied to each row of the original table.
  • If all the constraints evaluate to true for a given row, that row is included in the results table.
  • Constraints can be applied to any variable, not just the variables you download.
')" onmouseout="UnTip()" >
Optional
Constraint #2 ?Constraints
  • These optional constraints let you specify a subset of the data.
  • The constraints determine which rows of data from the original table are included in the results table.
  • The constraints are applied to each row of the original table.
  • If all the constraints evaluate to true for a given row, that row is included in the results table.
  • Constraints can be applied to any variable, not just the variables you download.
')" onmouseout="UnTip()" >
   Minimum ?
 
   Maximum ?
 
 time (UTC) ?  Float64 time {
    String _CoordinateAxisType "Time";
    Float64 actual_range 1.242585631e+9, 1.656795477e+9;
    String axis "T";
    String calendar "Gregorian";
    String ioos_category "Time";
    String long_name "Time";
    String standard_name "time";
    String time_origin "01-JAN-1970 00:00:00";
    String units "seconds since 1970-01-01T00:00:00Z";
  }
')" onmouseout="UnTip()" >  
       2009-05-17T18:40:31Z    2022-07-02T20:57:57Z
  < slider >
 longitude (degrees_east) ?  Float32 longitude {
    String _CoordinateAxisType "Lon";
    Float32 actual_range -9999.9, 9.96921e+36;
    String axis "X";
    Float64 colorBarMaximum 180.0;
    Float64 colorBarMinimum -180.0;
    String ioos_category "Location";
    String long_name "Longitude";
    String standard_name "longitude";
    String units "degrees_east";
  }
')" onmouseout="UnTip()" >  
       -9999.9    9.96921E36
  < slider >
 WMOID ?  String WMOID {
    String ioos_category "Identifier";
    String long_name "WMOID";
  }
')" onmouseout="UnTip()" >  
       "1801501"    "XXXXXXX"
 index_glider (Glider Index) ?  Int32 index_glider {
    Int32 actual_range 0, 1041;
    String ioos_category "Identifier";
    String long_name "Glider Index";
  }
')" onmouseout="UnTip()" >  
       0    1041
 latitude (degrees_north) ?  Float32 latitude {
    String _CoordinateAxisType "Lat";
    Float32 actual_range -9999.9, 9.96921e+36;
    String axis "Y";
    Float64 colorBarMaximum 90.0;
    Float64 colorBarMinimum -90.0;
    String ioos_category "Location";
    String long_name "Latitude";
    String standard_name "latitude";
    String units "degrees_north";
  }
')" onmouseout="UnTip()" >  
       -9999.9    9.96921E36
  < slider >
 
Server-side Functions ?TableDAP supports some server-side functions that modify the data results table. They are optional. Other than "distinct()", they are rarely needed.

Currently, each of the functions takes the results table as input and returns the table with the same columns in the same order, but the order of the rows, the number of rows, or data on the rows, is altered. If you use more than one function, they will be applied in the order that they appear in the request.')" onmouseout="UnTip()" >

 distinct() ?Checking "distinct()" tells ERDDAP to sort the results table by all of the variables selected above (with the top/first variable selected above being the most important and other selected variables only being used to break ties) and to remove all duplicate rows from the response table.

WARNING: if this is used without constraints, ERDDAP may have to read all rows from the datasource, which can be VERY SLOW for some datasets. So you should usually include constraints (e.g., time minimum and maximum).')" onmouseout="UnTip()" >

?orderBy sorts the rows of the results table by the specified variables, in ascending order.  For example, orderBy("stationID, time") sorts the results  primarily by stationID and secondarily by time.  

orderByDescending sorts the rows of the results table by the  specified variables, in descending order. For example, orderBy("stationID, time")  sorts the results primarily by stationID and secondarily by time.  

orderByClosest sorts the rows of the results table by the specified variables.  The last variable must be a numerical variable with a divisor. Only the rows closest to the divisor\'s interval will be kept.  For example, orderByClosest("stationID, time/2hours") will sort by stationID and time, but only return the rows for each stationID where the last orderBy column (time) are closest to 2 hour intervals.  

orderByCount sorts the rows of the results table into groups and just returns the count of the number of non-missing-values for each group. For example, orderByCount("stationID, time/1day") will sort by stationID and return one row for each stationID for each day, with a count of the number of non-missing-values for  each of the other variables.  

orderByLimit sorts the rows of the results table into groups and just returns the first nRows (as specified by the last orderByLimit value) within each group. For example, orderByMax("stationID, time/1day, 10") will sort by stationID and time, but only return the first 10 rows for each stationID for each day.  

orderByMax sorts the rows of the results table into groups and just returns the row within each group with the maximum value of the  last orderByMax variable in the request.  For example, orderByMax("stationID, time/1day, temperature") will group the rows by stationID and each day, but only return the row with the maximum temperature value for each stationID for each day.  

orderByMin is like orderByMax, but only keeps the row with the minimum value for the last orderByMin variable.  

orderByMinMax is like orderByMin plus orderByMax. Within each sort group, only the row with the minimum value and the row with the maximum value for the last orderByMinMax variable will be kept. For example, orderByMinMax("stationID, time/1day, temperature") will return the row with the minimum temperature value and the row with the maximum temperature value for each stationID for each day.  

orderByMean sorts the rows of the results table into groups and just returns one row for each group. That row will have the mean of each of the other variables. For example, orderByMax("stationID, time/1day") will create a group for each stationID for each day, and will calculate and return the mean of the other variables.  

orderBySum sorts the rows of the results table into groups and just returns one row for each group. That row will have the sum of each of the other variables. For example, orderByMax("stationID, time/1day") will create a group for each stationID for each day, and will calculate and return the sum of the other variables.')" onmouseout="UnTip()" > ("Hover here to see a list of options. Click on an option to select it.Hover here to see a list of options. Click on an option to select it.Hover here to see a list of options. Click on an option to select it.Hover here to see a list of options. Click on an option to select it.Hover here to see a list of options. Click on an option to select it.")

File type: (more information)

(Documentation / Bypass this form ?Optional: Bypass This Form
tabledap lets you request data by sending a specially formed URL to the server. The URL identifies a dataset, the desired file type for the response, and the subset of data that you want to receive. This Data Access Form simplifies this task: when you click on the Submit button below, the URL is generated and sent to the server. If you click on Just generate the URL, you can see the URL that the form generates, without sending the URL to the server.

If you learn how to form the URLs, you won\'t have to use this form to get data.
You can write a computer program or script that automatically generates URLs, sends them to ERDDAP, and gets the data. For more information on forming the URLs, click on the Bypass this form link to see the tabledap documentation.')" onmouseout="UnTip()" > )
 
(Please be patient. It may take a while to get the data.)


 

The Dataset Attribute Structure (.das) for this Dataset

Attributes {
 s {
  time {
    String _CoordinateAxisType "Time";
    Float64 actual_range 1.242585631e+9, 1.656795477e+9;
    String axis "T";
    String calendar "Gregorian";
    String ioos_category "Time";
    String long_name "Time";
    String standard_name "time";
    String time_origin "01-JAN-1970 00:00:00";
    String units "seconds since 1970-01-01T00:00:00Z";
  }
  longitude {
    String _CoordinateAxisType "Lon";
    Float32 actual_range -9999.9, 9.96921e+36;
    String axis "X";
    Float64 colorBarMaximum 180.0;
    Float64 colorBarMinimum -180.0;
    String ioos_category "Location";
    String long_name "Longitude";
    String standard_name "longitude";
    String units "degrees_east";
  }
  WMOID {
    String ioos_category "Identifier";
    String long_name "WMOID";
  }
  index_glider {
    Int32 actual_range 0, 1041;
    String ioos_category "Identifier";
    String long_name "Glider Index";
  }
  latitude {
    String _CoordinateAxisType "Lat";
    Float32 actual_range -9999.9, 9.96921e+36;
    String axis "Y";
    Float64 colorBarMaximum 90.0;
    Float64 colorBarMinimum -90.0;
    String ioos_category "Location";
    String long_name "Latitude";
    String standard_name "latitude";
    String units "degrees_north";
  }
 }
  NC_GLOBAL {
    String _NCProperties "version=2,netcdf=4.6.3,hdf5=1.10.2";
    String cdm_data_type "Point";
    String contact_email "Joaquin.Trinanes@noaa.gov";
    String contact_info "Atlantic Oceanographic and Meteorological Laboratory (AOML) 4301 Rickenbacker Causeway Miami, FL 33149";
    String Conventions "COARDS, CF-1.6, ACDD-1.3";
    String creator_email "Joaquin.Trinanes@noaa.gov";
    String creator_name "Physical Oceanography Division (PhOD) AOML";
    String creator_type "institution";
    String creator_url "http://www.aoml.noaa.gov/phod/goos/gliders/index.php";
    Float64 Easternmost_Easting 9.96921e+36;
    String featureType "Point";
    Float64 geospatial_lat_max 9.96921e+36;
    Float64 geospatial_lat_min -9999.9;
    String geospatial_lat_units "degrees_north";
    Float64 geospatial_lon_max 9.96921e+36;
    Float64 geospatial_lon_min -9999.9;
    String geospatial_lon_units "degrees_east";
    String history 
"2025-05-01T21:21:59Z (local files)
2025-05-01T21:21:59Z http://cwcgom.aoml.noaa.gov:8080/erddap/tabledap/GLIDER_IOOS_e3be_9d42_5e92.html";
    String infoUrl "http://www.aoml.noaa.gov/phod/goos/gliders/index.php";
    String institution "AOML";
    String keywords "aoml, atlantic, course, data, date, downsampled, glider, hour, hourly, identifier, index, index_glider, laboratory, latitude, longitude, meteorological, noaa, oceanographic, time, wmoid";
    String license "\"The data may be used and redistributed for free but is not intended for legal use, since it may contain inaccuracies. Neither the data Contributor, OAR, NOAA, nor the United States Government, nor any of their employees or contractors, makes any warranty, express or implied, including warranties of merchantability and fitness for a particular purpose, or assumes any legal liability for the accuracy, completeness, or usefulness, of this information.";
    Float64 Northernmost_Northing 9.96921e+36;
    String sourceUrl "(local files)";
    Float64 Southernmost_Northing -9999.9;
    String standard_name_vocabulary "CF Standard Name Table v29";
    String summary "Glider Location data provided by PhOD/Atlantic Oceanographic & Meteorological Laboratory (AOML). Only location and time are provided.";
    String time_coverage_end "2022-07-02T20:57:57Z";
    String time_coverage_start "2009-05-17T18:40:31Z";
    String title "Glider Location Data.";
    Float64 Westernmost_Easting -9999.9;
  }
}

 

Using tabledap to Request Data and Graphs from Tabular Datasets

tabledap lets you request a data subset, a graph, or a map from a tabular dataset (for example, buoy data), via a specially formed URL. tabledap uses the OPeNDAP (external link) Data Access Protocol (DAP) (external link) and its selection constraints (external link).

The URL specifies what you want: the dataset, a description of the graph or the subset of the data, and the file type for the response.

Tabledap request URLs must be in the form
http://coastwatch.pfeg.noaa.gov/erddap/tabledap/datasetID.fileType{?query}
For example,
http://coastwatch.pfeg.noaa.gov/erddap/tabledap/pmelTaoDySst.htmlTable?longitude,latitude,time,station,wmo_platform_code,T_25&time>=2015-05-23T12:00:00Z&time<=2015-05-31T12:00:00Z
Thus, the query is often a comma-separated list of desired variable names, followed by a collection of constraints (e.g., variable<value), each preceded by '&' (which is interpreted as "AND").

For details, see the tabledap Documentation.


 
ERDDAP, Version 2.23
Disclaimers | Privacy Policy | Contact