Easier access to scientific data

Brought to you by NOAA NMFS SWFSC ERD    

ERDDAP > tabledap > Make A Graph ?

Dataset Title:  Inverness County Water Quality Data Subscribe RSS
Institution:  Centre for Marine Applied Research (CMAR)   (Dataset ID: a9za-3t63)
Range: longitude = -61.45722 to -60.98854°E, latitude = 45.59586 to 46.08417°N, depth = 1.0 to 42.0m, time = 2015-11-26T21:20:51Z to 2022-10-24T12:45:00Z
Information:  Summary ? | License ? | FGDC | ISO 19115 | Metadata | Background (external link) | Subset | Data Access Form | Files
Graph Type:  ?
X Axis: 
Y Axis: 
Constraints ? Optional
Constraint #1 ?
Constraint #2 ?
Server-side Functions ?
 distinct() ?
? ("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.")
Graph Settings
Marker Type:   Size: 
Color Bar:   Continuity:   Scale: 
   Minimum:   Maximum:   N Sections: 
Draw land mask: 
Y Axis Minimum:   Maximum:   
(Please be patient. It may take a while to get the data.)
Then set the File Type: (File Type information)
or view the URL:
(Documentation / Bypass this form ? )
    Click on the map to specify a new center point. ?
[The graph you specified. Please be patient.]


Things You Can Do With Your Graphs

Well, you can do anything you want with your graphs, of course. But some things you might not have considered are:

The Dataset Attribute Structure (.das) for this Dataset

Attributes {
 s {
  waterbody {
    String ioos_category "Unknown";
    String long_name "Waterbody";
  station {
    String cf_role "timeseries_id";
    String ioos_category "Identifier";
    String long_name "Station";
  lease {
    String ioos_category "Unknown";
    String long_name "Lease";
  latitude {
    String _CoordinateAxisType "Lat";
    Float32 actual_range 45.59586, 46.08417;
    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";
  longitude {
    String _CoordinateAxisType "Lon";
    Float32 actual_range -61.45722, -60.98854;
    String axis "X";
    Float64 colorBarMaximum 180.0;
    Float64 colorBarMinimum -190.0;
    String ioos_category "Location";
    String long_name "Longitude";
    String standard_name "longitude";
    String units "degrees_east";
  deployment_start_date {
    Float64 actual_range 1.448496e+9, 1.6594848e+9;
    String ioos_category "Time";
    String long_name "Deployment Start Date";
    String source_name "deployment_start_date";
    String time_origin "01-JAN-1970 00:00:00";
    String time_precision "1970-01-01";
    String units "seconds since 1970-01-01T00:00:00Z";
  deployment_end_date {
    Float64 actual_range 1.472688e+9, 1.6665696e+9;
    String ioos_category "Time";
    String long_name "Deployment End Date";
    String source_name "deployment_end_date";
    String time_origin "01-JAN-1970 00:00:00";
    String time_precision "1970-01-01";
    String units "seconds since 1970-01-01T00:00:00Z";
  string_configuration {
    String ioos_category "Unknown";
    String long_name "String Configuration";
  sensor_type {
    String ioos_category "Unknown";
    String long_name "Sensor Type";
  sensor_serial_number {
    String ioos_category "Unknown";
    String long_name "Sensor Serial Number";
  time {
    String _CoordinateAxisType "Time";
    Float64 actual_range 1.448572851e+9, 1.6666155e+9;
    String axis "T";
    String ioos_category "Time";
    String long_name "Timestamp";
    String source_name "timestamp_utc";
    String standard_name "time";
    String time_origin "01-JAN-1970 00:00:00";
    String time_precision "1970-01-01T00:00:00Z";
    String units "seconds since 1970-01-01T00:00:00Z";
  depth {
    String _CoordinateAxisType "Height";
    String _CoordinateZisPositive "down";
    Float32 actual_range 1.0, 42.0;
    String axis "Z";
    Float64 colorBarMaximum 8000.0;
    Float64 colorBarMinimum -8000.0;
    String colorBarPalette "TopographyDepth";
    String ioos_category "Location";
    String long_name "Sensor depth at low tide";
    String positive "down";
    String standard_name "depth";
    String units "m";
  dissolved_oxygen {
    Float32 actual_range -0.6, 128.0;
    String ioos_category "Dissolved O2";
    String long_name "Volume Fraction Of Oxygen In Sea Water";
    String standard_name "volume_fraction_of_oxygen_in_sea_water";
    String units "% saturation";
  salinity {
    Float32 actual_range 22.2, 24.5;
    String ioos_category "Salinity";
    String long_name "Salinity";
    String units "PSU";
  temperature {
    Float32 _FillValue NaN;
    Float32 actual_range -0.311, 26.989;
    String ioos_category "Temperature";
    String long_name "Sea Water Temperature";
    String standard_name "sea_water_temperature";
    String units "degrees_Celsius";
  qc_flag_dissolved_oxygen {
    String ancillary_variables "dissolved_oxygen_percent_saturation";
    String ioos_category "Quality";
    String long_name "Quality Flag for Parameter: Dissolved Oxygen (Percent Saturation)";
    String standard_name "quality_flag";
  qc_flag_salinity {
    String ancillary_variables "salinity_psu";
    String ioos_category "Quality";
    String long_name "Quality Flag for Parameter: Salinity (PSU)";
    String standard_name "quality_flag";
  qc_flag_temperature {
    String ancillary_variables "temperature_degree_c";
    String ioos_category "Quality";
    String long_name "Quality Flag for Parameter: Temperature (Degree Celsius)";
    String standard_name "quality_flag";
    String cdm_data_type "TimeSeries";
    String cdm_timeseries_variables "waterbody,station,sensor_type,sensor_serial_number";
    String contributor_name "Centre for Marine Applied Research (CMAR)";
    String contributor_role "owner";
    String Conventions "COARDS, CF-1.6, ACDD-1.3";
    String creator_email "info(at)";
    String creator_name "CMAR";
    String creator_type "person";
    String date_created "2021-01-19T19:43:36Z";
    String defaultDataQuery "&time>=min(time)";
    Float64 Easternmost_Easting -60.98854;
    String featureType "TimeSeries";
    Float64 geospatial_lat_max 46.08417;
    Float64 geospatial_lat_min 45.59586;
    String geospatial_lat_units "degrees_north";
    Float64 geospatial_lon_max -60.98854;
    Float64 geospatial_lon_min -61.45722;
    String geospatial_lon_units "degrees_east";
    Float64 geospatial_vertical_max 42.0;
    Float64 geospatial_vertical_min 1.0;
    String geospatial_vertical_positive "down";
    String geospatial_vertical_units "m";
    String history 
"2024-06-23T17:41:00Z (local files)
    String infoUrl "";
    String institution "Centre for Marine Applied Research (CMAR)";
    String instrument "hobo-10755232,hobo-10755215,hobo-10778922,hobo-10778916,hobo-10034851,hobo-10034865,hobo-10755204,hobo-10755206,hobo-10778921,hobo-10778923,hobo-10755219,hobo-10755217,hobo-10755218,hobo-10778918,hobo-10817401,aquameasure-670295,aquameasure-670352,aquameasure-670285,hobo-10778914,hobo-10779129,hobo-10817399,aquameasure-670290,aquameasure-670296,hobo-10777103,hobo-10817503,aquameasure-671015,aquameasure-671045,aquameasure-680360,aquameasure-671010,aquameasure-671014,aquameasure-680323,hobo-20495242";
    String keywords "aquaculture, buoy, centre for marine applied research, climate change, cmar, coast, coastal monitoring program, dissolved oxygen, downloadable data, ecosystem, environment, environmental monitoring, essential ocean variables, fisheries, fishing, inverness county, mooring, nova scotia, ocean, oceanography, salinity, temperature, water quality";
    String license "Nova Scotia Open Government Licence";
    Float64 Northernmost_Northing 46.08417;
    String publisher_email "info(at)";
    String publisher_institution "Centre for Marine Applied Research (CMAR)";
    String publisher_name "Centre for Marine Applied Research (CMAR)";
    String sourceUrl "(local files)";
    Float64 Southernmost_Northing 45.59586;
    String standard_name_vocabulary "CF Standard Name Table v55";
    String subsetVariables "waterbody, station, sensor_type, sensor_serial_number,lease,string_configuration,qc_flag_dissolved_oxygen,qc_flag_salinity,qc_flag_temperature";
    String summary "The Centre for Marine Applied Research’s (CMAR) Coastal Monitoring Program provides high resolution data on ocean variables from around the coast of Nova Scotia. The program was initiated by the Nova Scotia Department of Fisheries and Aquaculture in the early 1990s. In 2019, CMAR assumed responsibility for the program and expanded its scope and mandate. Through the Water Quality Branch of the program, CMAR collects temperature, dissolved oxygen, and salinity data using sensors deployed on “sensor strings”. A sensor string typically consists of a line anchored to the sea floor by an acoustic release and suspended by a sub-surface buoy, with sensors attached at various depths below the surface (as measured at low tide). Alternatively, a string may be attached to surface moorings, including floating docks, buoys, and equipment. Sensor strings are deployed for several months, and data are measured every 1 minute to 1 hour. Sensors are retrieved for data offload by triggering the acoustic release when applicable, by directly removing from surface moorings, or occasionally by divers or grappling methods. Automated Quality Control tests have been applied to the data to identify outlying and unexpected observations. The results of these tests are summarized in the “qc_flag” columns of the dataset. Each data point is assigned a flag value of “Pass”, “Suspect/Of Interest”, “Fail”, or “Not Evaluated”. Observations flagged as “Pass” passed all tests and can be included in analyses. Dissolved oxygen observations flagged as “Suspect/Of Interest” likely indicate biofouling signals and should be excluded from analysis or used with extreme caution. Observations for other variables flagged as “Suspect/Of Interest” should be reviewed before being included in analyses. Observations flagged as “Fail” should be excluded from most analyses. Some tests cannot be applied to certain observations, which will be flagged as “Not Evaluated”. These observations can typically be included in analyses. Flags should be used as a guide only, and data users are responsible for evaluating the quality of the data prior to use in any analysis. For more information about the Quality Control tests, visit the CMAR Data Governance website ( The Coastal Monitoring Program Water Quality data is organized by county. These datasets are very large, typically exceeding the number of rows that can be viewed in Excel. CMAR recommends filtering the data to the waterbody, station, depth, quality control flag, and/or time period of interest before exporting. A chart derived from the dataset also allows for interactive filtering and export ( The \"Nova Scotia Water Quality Data: Station Locations\" dataset on this Portal shows additional locations with available Water Quality data collected through CMAR’s Coastal Monitoring Program ( Summary reports by county are available on the CMAR website ( Data can also be downloaded from the ERDDAP server through the Canadian Integrated Ocean Observing System (CIOOS) platform ( Data collection and retrieval are ongoing. The datasets and reports may be revised pending ongoing data collection and analyses. If you have accessed any Coastal Monitoring Program data, CMAR would appreciate your feedback: Please acknowledge the Centre for Marine Applied Research in any published material that uses this data. Contact for more information.";
    String time_coverage_end "2022-10-24T12:45:00Z";
    String time_coverage_start "2015-11-26T21:20:51Z";
    String title "Inverness County Water Quality Data";
    Float64 Westernmost_Easting -61.45722;


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{?query}
For example,,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.18
Disclaimers | Privacy Policy | Contact