import intake
import hvplot.pandas
import hvplot.xarray
import cook_inlet_catalogs as cic
import holoviews as hv
CTD transects: Barabara to Bluff¶
Repeat CTD transect from Barabara to Bluff Point in Cook Inlet from 2002 to 2003.
cat = intake.open_catalog(cic.utils.cat_path("ctd_transects_barabara_to_bluff_2002_2003"))
Plot all datasets in catalog¶
dd, ddlabels = cic.utils.combine_datasets_for_map(cat)
dd.hvplot(**cat.metadata["map"]) * ddlabels.hvplot(**cat.metadata["maplabels"])
List available datasets in the catalog¶
dataset_ids = list(cat)
dataset_ids
['Cruise 1',
'Cruise 10',
'Cruise 11',
'Cruise 2',
'Cruise 3',
'Cruise 4',
'Cruise 5',
'Cruise 6',
'Cruise 7',
'Cruise 8',
'Cruise 9']
Select one dataset to investigate¶
try:
dataset_id = dataset_ids[2]
except:
dataset_id = dataset_ids[0]
print(dataset_id)
dd = cat[dataset_id].read()
dd
Cruise 11
| date_time | Station | Lat (N) | Long (E) | Depth (m) | Temperature (C) | Salinity | Fluorometer (V) | PAR | Cruise | Transmissometer (V) | Ox (Mg/L) | Ox (%sat) | distance [km] | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 2003-06-21 11:20:00 | OCEAN1 | 59.49 | -151.6498 | 1.0 | 9.1208 | 31.5677 | 8.9681 | 894.68 | Cruise 11 | 3.6602 | 10.12519 | 107.58179 | 0.000000 |
| 1 | 2003-06-21 11:20:00 | OCEAN1 | 59.49 | -151.6498 | 2.0 | 9.0259 | 31.5591 | 8.9086 | 496.11 | Cruise 11 | 3.6512 | 10.28049 | 108.99837 | 0.000000 |
| 2 | 2003-06-21 11:20:00 | OCEAN1 | 59.49 | -151.6498 | 3.0 | 8.9492 | 31.5775 | 10.5105 | 360.64 | Cruise 11 | 3.6898 | 10.21563 | 108.13611 | 0.000000 |
| 3 | 2003-06-21 11:20:00 | OCEAN1 | 59.49 | -151.6498 | 4.0 | 8.9424 | 31.5782 | 13.9390 | 266.61 | Cruise 11 | 3.7373 | 10.18829 | 107.83071 | 0.000000 |
| 4 | 2003-06-21 11:20:00 | OCEAN1 | 59.49 | -151.6498 | 5.0 | 8.9483 | 31.5769 | 17.8647 | 183.73 | Cruise 11 | 3.7310 | 10.15193 | 107.45921 | 0.000000 |
| ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
| 537 | 2003-06-21 13:02:00 | OCEAN19 | 59.64 | -151.6569 | 5.0 | 10.4763 | 30.2134 | 16.8106 | 54.43 | Cruise 11 | 3.2911 | 10.18404 | 110.56947 | 16.715659 |
| 538 | 2003-06-21 13:02:00 | OCEAN19 | 59.64 | -151.6569 | 6.0 | 10.4424 | 30.2222 | 17.2210 | 40.27 | Cruise 11 | 3.2099 | 10.08580 | 109.42708 | 16.715659 |
| 539 | 2003-06-21 13:02:00 | OCEAN19 | 59.64 | -151.6569 | 7.0 | 10.1204 | 30.4197 | 18.3536 | 28.83 | Cruise 11 | 3.3562 | 10.05516 | 108.45717 | 16.715659 |
| 540 | 2003-06-21 13:02:00 | OCEAN19 | 59.64 | -151.6569 | 8.0 | 9.8367 | 30.5968 | 14.5509 | 22.18 | Cruise 11 | 3.7244 | 10.03980 | 107.73305 | 16.715659 |
| 541 | 2003-06-21 13:02:00 | OCEAN19 | 59.64 | -151.6569 | 9.0 | 9.8200 | 30.5981 | 9.3255 | 17.50 | Cruise 11 | 3.7514 | 10.00028 | 107.27018 | 16.715659 |
542 rows × 14 columns
Plot one dataset¶
keys = list(cat[dataset_id].metadata["plots"].keys())
print(keys)
plots = []
for key in keys:
plot_kwargs = cat[dataset_id].metadata["plots"][key]
if "clim" in plot_kwargs and isinstance(plot_kwargs["clim"], list):
plot_kwargs["clim"] = tuple(plot_kwargs["clim"])
if "dynamic" in plot_kwargs:
plot_kwargs["dynamic"] = False
plots.append(cat[dataset_id].ToHvPlot(**plot_kwargs).read())
hv.Layout(plots).cols(1)
['salt', 'temp']