Visualization#
sidescanpy.viz draws one result per call and returns matplotlib
Axes / Figure; nothing is saved. Requires the [viz] extra.
Waterfalls, grids and tracks#
import matplotlib.pyplot as plt
from sidescanpy.viz import plot_waterfall
fig, ax = plt.subplots(figsize=(12, 6))
plot_waterfall(ds, x_axis="across_track", y_axis="along_track", ax=ax, show_colorbar=True)
fig.savefig("waterfall.png")
x_axis |
Meaning |
Needs |
|---|---|---|
|
sample index, port mirrored |
nothing |
|
across-bottom distance, signed by side |
|
|
signed across-track distance (pitched fan beam) |
|
y_axis |
Meaning |
|---|---|
|
ping number ( |
|
ping timestamp |
|
cumulative geodesic distance |
Colour limits default to the 1st–99th percentile of finite values
(vmin_pct / vmax_pct, or fixed vmin / vmax); gamma applies a
power-law display stretch without changing the colorbar’s units. The
default colormap is copper; NaN cells render in a neutral colour.
Also: plot_survey_overview (whole survey compressed),
plot_gridded_raster, plot_grid_coverage (cell opacity set by samples
per cell), plot_track_and_scanlines,
plot_track_with_targets, plot_target_position_scatter,
contact_sheet, render_target_context. Basemaps behind georeferenced
plots need the [maps] extra.
Analysis plots#
One per analysis result: plot_value_histograms, plot_units_distribution,
plot_sample_ping, plot_outlier_comparison, plot_cross_track_profile,
plot_nadir_zoom, plot_nadir_waterfall, plot_beam_geometry,
plot_usable_range, plot_segments_overview, plot_navigation_summary,
plot_mean_vs_range, plot_tvg_gain_curve, plot_per_ping_profiles,
plot_multi_frequency_comparison, plot_altitude_bin_comparison,
plot_tvg_fit (a fit_tvg_models result and, below it, a check_tvg
result). Deprecated, removed in 0.12: plot_candidate_fit,
plot_range_decay_fit, plot_range_decay_residuals,
set_fit_window_limits.
Multi-panel figure layouts are the caller’s; the Examples build them from these functions.