Echoshader#
Echoshader is an open-source Python library for interactive ocean sonar visualization, built around the HoloViz ecosystem. It works alongside Echopype, which handles acoustic data conversion, calibration, and processing.
Two ways to use Echoshader#
Standalone visualization elements expose echograms, three-channel RGB echograms, vessel tracks, 3-D curtains, histograms, tables, curves, and NASC plots. They can be used in notebooks and scripts. See Visualization elements.
A YAML-configured Panel application combines selected acoustic visualizations with interactive navigation and shared controls. The current app uses a generic, predefined HoloViz layout rather than YAML-defined arbitrary controls or processing pipelines. See Building an Echoshader application.
Acoustic data and processing#
Echoshader visualizes xarray acoustic datasets, including Zarr and NetCDF products. Calibration, geometry matching, and MVBS calculations should be performed upstream, such as with Echopype. Echoshader validates required coordinates and reports whether a dataset supports three-channel tricolor rendering; it does not silently regrid or modify acoustic measurements.
Examples#
Explore Visualization element examples for plots using the downloadable MVBS dataset, or Echogram vertical coordinates and geometry for RAW processing and vertical-coordinate comparisons.
To run the examples locally, open the notebooks in examples/notebooks/. The visualization element notebook downloads and extracts the processed example dataset as MVBS.zarr.
Alternatively, download MVBS.zip directly and extract it into examples/notebooks/. The example application configuration points to this dataset. Follow Building an Echoshader application to launch the app from the repository root.