Usage

To get access to Argo data, all you need is 2 lines of codes:

[2]:
from argopy import DataFetcher as ArgoDataFetcher
ds = ArgoDataFetcher().region([-75, -45, 20, 30, 0, 100, '2011', '2012']).to_xarray()
/home/docs/checkouts/readthedocs.org/user_builds/argopy/checkouts/v0.1.4/argopy/plotters.py:33: UserWarning: argopy requires cartopy installed for full map plotting functionality
  warnings.warn("argopy requires cartopy installed for full map plotting functionality")

In this example, we used a data fetcher to get data for a given space/time region. We retrieved all Argo data measurements from 75W to 45W, 20N to 30N, 0db to 100db and from January to May 2011 (the max date is exclusive). Data are returned as a collection of measurements in a xarray.Dataset:

[3]:
print(ds)
<xarray.Dataset>
Dimensions:          (N_POINTS: 29023)
Coordinates:
    LONGITUDE        (N_POINTS) float64 -45.14 -45.14 -45.14 ... -54.11 -54.11
    LATITUDE         (N_POINTS) float64 24.54 24.54 24.54 ... 22.58 22.58 22.58
  * N_POINTS         (N_POINTS) int64 0 1 2 3 4 ... 29019 29020 29021 29022
    TIME             (N_POINTS) datetime64[ns] 2011-01-01T11:49:19 ... 2011-12-31T20:31:01
Data variables:
    CYCLE_NUMBER     (N_POINTS) int64 23 23 23 23 23 23 23 ... 23 23 23 23 23 23
    DATA_MODE        (N_POINTS) <U1 'D' 'D' 'D' 'D' 'D' ... 'D' 'D' 'D' 'D' 'D'
    DIRECTION        (N_POINTS) <U1 'A' 'A' 'A' 'A' 'A' ... 'A' 'A' 'A' 'A' 'A'
    PLATFORM_NUMBER  (N_POINTS) int64 1901463 1901463 ... 6901052 6901052
    POSITION_QC      (N_POINTS) int64 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1
    PRES             (N_POINTS) float32 5.0 10.0 15.0 20.0 ... 70.7 80.2 90.7
    PRES_QC          (N_POINTS) int64 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1
    PSAL             (N_POINTS) float32 37.44895 37.44793 ... 37.19193 37.15593
    PSAL_QC          (N_POINTS) int64 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1
    TEMP             (N_POINTS) float32 24.081 24.084 24.089 ... 24.776 24.139
    TEMP_QC          (N_POINTS) int64 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1
    TIME_QC          (N_POINTS) int64 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1
Attributes:
    cdm_altitude_proxy:        pres
    cdm_data_type:             TrajectoryProfile
    cdm_profile_variables:     cycle_number, data_type, format_version, handb...
    cdm_trajectory_variables:  platform_number, project_name, pi_name, platfo...
    Conventions:               Argo-3.1, CF-1.6, COARDS, ACDD-1.3
    creator_email:             support@argo.net
    creator_name:              Argo
    creator_url:               http://www.argo.net/
    Easternmost_Easting:       -45.006
    featureType:               TrajectoryProfile
    geospatial_lat_max:        30.0
    geospatial_lat_min:        20.007
    geospatial_lat_units:      degrees_north
    geospatial_lon_max:        -45.006
    geospatial_lon_min:        -74.961
    geospatial_lon_units:      degrees_east
    history:                   2020-06-24T21:04:24Z (local files)\n2020-06-24...
    id:                        ArgoFloats
    infoUrl:                   http://www.argo.net/
    institution:               Argo
    keywords:                  adjusted, argo, array, assembly, best, centre,...
    keywords_vocabulary:       GCMD Science Keywords
    license:                   The data may be used and redistributed for fre...
    Northernmost_Northing:     30.0
    references:                http://www.argodatamgt.org/Documentation
    source:                    Argo float
    sourceUrl:                 (local files)
    Southernmost_Northing:     20.007
    standard_name_vocabulary:  CF Standard Name Table v29
    summary:                   Argo float vertical profiles from Coriolis Glo...
    time_coverage_end:         2011-12-31T20:31:01Z
    time_coverage_start:       2011-01-01T11:49:19Z
    title:                     Argo Float Measurements
    user_manual_version:       3.1
    Westernmost_Easting:       -74.961
    DATA_ID:                   ARGO
    DOI:                       http://doi.org/10.17882/42182
    Fetched_from:              http://www.ifremer.fr/erddap
    Fetched_by:                docs
    Fetched_date:              2020/06/24
    Fetched_constraints:       phy_[x=-75.00/-45.00; y=20.00/30.00; z=0.0/100...
    Fetched_uri:               http://www.ifremer.fr/erddap/tabledap/ArgoFloa...

Fetched data are returned as a 1D array collection of measurements. If you prefer to work with a 2D array collection of vertical profiles, simply transform the dataset with the xarray.Dataset accessor method argopy.argo.point2profile():

[4]:
ds = ds.argo.point2profile()
print(ds)
<xarray.Dataset>
Dimensions:          (N_LEVELS: 55, N_PROF: 1419)
Coordinates:
  * N_PROF           (N_PROF) int64 42 664 298 5 527 ... 204 368 526 1272 1375
    LATITUDE         (N_PROF) float64 24.54 25.04 21.48 ... 26.85 20.66 22.58
    LONGITUDE        (N_PROF) float64 -45.14 -51.58 -60.82 ... -53.52 -54.11
    TIME             (N_PROF) datetime64[ns] 2011-01-01T11:49:19 ... 2011-12-31T20:31:01
  * N_LEVELS         (N_LEVELS) int64 0 1 2 3 4 5 6 7 ... 48 49 50 51 52 53 54
Data variables:
    CYCLE_NUMBER     (N_PROF) int64 23 10 135 23 119 160 ... 193 171 165 4 23
    DATA_MODE        (N_PROF) <U1 'D' 'D' 'D' 'D' 'D' ... 'D' 'D' 'D' 'D' 'D'
    DIRECTION        (N_PROF) <U1 'A' 'A' 'A' 'A' 'A' ... 'A' 'A' 'A' 'A' 'A'
    PLATFORM_NUMBER  (N_PROF) int64 1901463 4901211 4900818 ... 6900935 6901052
    POSITION_QC      (N_PROF) int64 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1 1
    PRES             (N_PROF, N_LEVELS) float32 5.0 10.0 15.0 ... nan nan nan
    PRES_QC          (N_PROF) int64 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1 1
    PSAL             (N_PROF, N_LEVELS) float32 37.44895 37.44793 ... nan nan
    PSAL_QC          (N_PROF) int64 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1 1
    TEMP             (N_PROF, N_LEVELS) float32 24.081 24.084 24.089 ... nan nan
    TEMP_QC          (N_PROF) int64 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1 1
    TIME_QC          (N_PROF) int64 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1 1
Attributes:
    cdm_altitude_proxy:        pres
    cdm_data_type:             TrajectoryProfile
    cdm_profile_variables:     cycle_number, data_type, format_version, handb...
    cdm_trajectory_variables:  platform_number, project_name, pi_name, platfo...
    Conventions:               Argo-3.1, CF-1.6, COARDS, ACDD-1.3
    creator_email:             support@argo.net
    creator_name:              Argo
    creator_url:               http://www.argo.net/
    Easternmost_Easting:       -45.006
    featureType:               TrajectoryProfile
    geospatial_lat_max:        30.0
    geospatial_lat_min:        20.007
    geospatial_lat_units:      degrees_north
    geospatial_lon_max:        -45.006
    geospatial_lon_min:        -74.961
    geospatial_lon_units:      degrees_east
    history:                   2020-06-24T21:04:24Z (local files)\n2020-06-24...
    id:                        ArgoFloats
    infoUrl:                   http://www.argo.net/
    institution:               Argo
    keywords:                  adjusted, argo, array, assembly, best, centre,...
    keywords_vocabulary:       GCMD Science Keywords
    license:                   The data may be used and redistributed for fre...
    Northernmost_Northing:     30.0
    references:                http://www.argodatamgt.org/Documentation
    source:                    Argo float
    sourceUrl:                 (local files)
    Southernmost_Northing:     20.007
    standard_name_vocabulary:  CF Standard Name Table v29
    summary:                   Argo float vertical profiles from Coriolis Glo...
    time_coverage_end:         2011-12-31T20:31:01Z
    time_coverage_start:       2011-01-01T11:49:19Z
    title:                     Argo Float Measurements
    user_manual_version:       3.1
    Westernmost_Easting:       -74.961
    DATA_ID:                   ARGO
    DOI:                       http://doi.org/10.17882/42182
    Fetched_from:              http://www.ifremer.fr/erddap
    Fetched_by:                docs
    Fetched_date:              2020/06/24
    Fetched_constraints:       phy_[x=-75.00/-45.00; y=20.00/30.00; z=0.0/100...
    Fetched_uri:               http://www.ifremer.fr/erddap/tabledap/ArgoFloa...

You can also fetch data for a specific float using its WMO number:

[5]:
ds = ArgoDataFetcher().float(6902746).to_xarray()

or for a float profile using the cycle number:

[6]:
ds = ArgoDataFetcher().profile(6902755, 12).to_xarray()