Metadata-Version: 2.4
Name: ebas-plot
Version: 0.1.3
Summary: Plotting utilities for EBAS netCDF datasets.
Author-email: Lise Eder Murberg <lemu@nilu.no>, Marthe Brevig <mbre@nilu.no>, Jonathan Elias Holme <jhol@nilu.no>
License-Expression: AGPL-3.0-or-later
Project-URL: Homepage, https://git.nilu.no/ebas/ebas-web/ebas-web-plotting
Project-URL: Source, https://git.nilu.no/ebas/ebas-web/ebas-web-plotting
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Atmospheric Science
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: netCDF4
Requires-Dist: numpy
Requires-Dist: pandas
Requires-Dist: plotly
Requires-Dist: pydap
Requires-Dist: requests
Requires-Dist: xarray
Dynamic: license-file

# ebas-plot

Plotting utilities for EBAS NetCDF datasets.

## Installation

For normal use, install the latest released version from the public Python
Package Index (PyPI):

```bash
python3 -m pip install ebas-plot
```

This installs a fixed release, such as `0.1.0`, together with its required
dependencies. It is the recommended installation method.

## Usage

### Command line

```bash
ebas-plot <url>
```

`<url>` can be a local EBAS NetCDF file or a remote EBAS dataset:

- `/path/to/dataset.nc`
- `https://doi.nilu.no/doi/8HWP-FRNN`
- `https://doi.org/10.48597/8HWP-FRNN`
- `https://thredds.nilu.no/thredds/dodsC/ebas_doi/...`
- `https://thredds.nilu.no/thredds/fileServer/ebas_doi/...`

The plot type is selected automatically: datasets with a `d_D` dimension are
shown as PNSD heatmaps; other supported EBAS datasets are shown as time series.

Choose the time-series rendering explicitly with `--mode line` or
`--mode scatter`:

```bash
ebas-plot --mode scatter /path/to/dataset.nc
```

Use `--var_plots` to open one plot per physical quantity rather than one
combined time-series plot:

```bash
ebas-plot --var_plots https://doi.nilu.no/doi/8HWP-FRNN
```

### As a library

```python
from ebas_plot import open_dataset, plot, plot_pnsd, plot_timeseries

# Auto-detect a remote dataset's plot type.
fig = plot("https://doi.nilu.no/doi/8HWP-FRNN")
fig.show()

# Open a local EBAS NetCDF file and select scatter points.
ds = open_dataset("/path/to/dataset.nc")
fig = plot_timeseries(ds, mode="scatter")
fig.show()

# Produce one time-series figure per physical quantity.
figures = plot("https://doi.nilu.no/doi/8HWP-FRNN", var_plots=True, mode="line")
for figure in figures:
	figure.show()
```

## License

Copyright (C) 2026 Lise Eder Murberg, Marthe Brevig, and Jonathan Elias Holme.

This project is licensed under the GNU Affero General Public License, version
3 or later (AGPL-3.0-or-later). The full license text is available at
https://www.gnu.org/licenses/agpl-3.0.html.
