import intake
import hvplot.pandas
import hvplot.xarray
import cook_inlet_catalogs as cic
import holoviews as hv
Moorings (KBNERR): Historical, Kachemak Bay¶
Historical moorings from Kachemak Bay National Estuarine Research Reserve (KBNERR)
More information: https://accs.uaa.alaska.edu/kbnerr/
cat = intake.open_catalog(cic.utils.cat_path("moorings_kbnerr_historical"))
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
['kacbcwq', 'kacdlwq', 'kachowq', 'kacpgwq', 'kacsewq']
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
kachowq
| DateTimeStamp | Temp | Sal | Depth | lat | lon | |
|---|---|---|---|---|---|---|
| 0 | 2001-07-12 07:45:00 | 8.1 | 31.9 | 7.47 | 59.60232 | -151.41 |
| 1 | 2001-07-12 08:15:00 | 8.3 | 31.8 | 7.15 | 59.60232 | -151.41 |
| 2 | 2001-07-12 08:30:00 | 10.2 | 29.6 | 6.99 | 59.60232 | -151.41 |
| 3 | 2001-07-12 08:45:00 | 10.9 | 28.4 | 6.81 | 59.60232 | -151.41 |
| 4 | 2001-07-12 09:00:00 | 11.8 | 27.3 | 6.63 | 59.60232 | -151.41 |
| ... | ... | ... | ... | ... | ... | ... |
| 29849 | 2002-11-20 10:30:00 | 7.0 | 29.9 | 5.91 | 59.60232 | -151.41 |
| 29850 | 2002-11-20 11:00:00 | 7.2 | 30.0 | 6.51 | 59.60232 | -151.41 |
| 29851 | 2002-11-20 11:30:00 | 7.0 | 29.9 | 7.12 | 59.60232 | -151.41 |
| 29852 | 2002-11-20 12:00:00 | 7.4 | 30.1 | 7.70 | 59.60232 | -151.41 |
| 29853 | 2002-11-20 12:30:00 | 7.4 | 30.0 | 8.24 | 59.60232 | -151.41 |
29854 rows × 6 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)
['data']