radiens_qc.plot_raw
Render raw-signal excerpts as traces and spectra.
Separate from :mod:radiens_qc.plot_quality because these take a
:class:~radiens_qc.raw.RawSignal rather than a
:class:~radiens_qc.report.QualityReport: they describe the recording, not the
measurement, and cannot be drawn from a saved report directory. Figures are
built directly from Figure rather than through pyplot, so nothing is
registered in pyplot's global manager.
Every channel is drawn, in depth order, shallowest at the top -- the same order and the same orientation as the site maps, the channel profiles and the metric heatmaps, so a row here is findable at the same height there. No subset rule: any subset is a claim about what matters made before looking, and an evenly spaced sample misses the contiguous bad block -- a dead bank or a failed shank reads as a band, and a band only exists when its neighbors are drawn beside it. Depth order rather than rank order for the same reason the spatial map keeps adjacency: a full-probe artefact is a stripe across every trace at one instant, and common-mode noise is correlated wander, both visible only when spatially adjacent channels are vertically adjacent.
Classes
Functions:
plot_raw_spectra
Per-channel power spectra of the wideband recording, overlaid and as a site map.
Computed over the full recording on the wideband signal via radiens-core's
spectral API: the filtered signal has the notch and bandpass already applied,
so line noise is absent from it by construction and a spectrum of it would
show the filter rather than the recording. The filtered median is drawn
alongside as one line, which is what makes the passband visible.
The left panel overlays every channel, where a line-noise peak and its harmonics stand out. The right panel is the same data as channel x frequency in depth order, where a site unlike its neighbors does.
plot_raw_traces
Wideband and stage-2-filtered traces, side by side, one row per excerpt.
The two columns share their channel axis so a site sits at the same height in both -- seeing what the DSP chain removed is the comparison, and it only reads if the pair lines up. Each column carries its own amplitude scale: wideband and filtered legitimately differ by an order of magnitude, and one shared scale would flatten the filtered column to a line.
Crossing ticks go on the filtered column only, since that is the signal detection ran on.