Skip to content

0.3.0.10083

Choose a tag to compare

@hanacryo-bot hanacryo-bot released this 28 Jul 10:24
· 19 commits to main since this release

tail-f_plot v0.3.0

Multi-file overlay and vertically stacked sub-plots — plot several CSV files on one shared time axis, in one window.

Multiple files on one plot (--)

tail-f_plot.exe a.csv --y-cols 2,3 -- b.csv --y-cols 2 -- c.csv
  • -- starts a new file group. Options omitted in a group — even the file path — inherit from the previous group; options given apply from that group onward.
  • Per-group options: <CSV_PATH>, --x-col, --y-cols, --y-names, --y-stacks, --header-row, --data-start-row, --delimiter, --string-quote, --merge-delimiter, --fixed-width, --x-time-scale, --x-proportion, --epochtime-col, --epochtime-proportion.
    Everything else is window-global and belongs to the first group.
  • X alignment: every file shares the first file's X origin (unless --absolute-x). Files with different raw X units rescale per group via
    --x-time-scale / --x-proportion.
  • Epoch-time alignment: when X columns are per-file elapsed times, give the epoch timestamp column via --epochtime-col <N> (on the first file too — inheritance makes this automatic). Later files are then shifted by the wall-clock difference, so recordings that started at different times align exactly. --epochtime-proportion covers epoch units that differ from the X column (e.g. epoch in ms, X in s). Files without the column fall back to the shared origin.
  • Resetting an inherited option: --epochtime-col 0, --fixed-width 0, --merge-delimiter=false.
  • Duplicate series names are disambiguated automatically: Temp, Temp(2), Temp(3), ... Default names get a file-stem prefix (a:Col2).
  • stdout status now prints one WATCHING: / WAITING: line per file after the PID: line.

Vertical stacked sub-plots (--y-stacks)

tail-f_plot.exe temp.csv --y-cols 5 --y-stacks 1 --y-units K,A,V ^
  -- current.csv --y-cols 5 --y-stacks 2 ^
  -- voltage.csv --y-cols 4 --y-stacks 3
  • --y-stacks assigns each Y column a 1-based stack index; series with the same index share one sub-plot, different indices stack top-to-bottom.
  • --y-units K,A,V gives each stack its own Y unit (axis label, legend, tooltip), lifting the two-unit limit of a left/right dual axis.
  • The X axis is linked: dragging or zooming X in any sub-plot moves all of them together; Y stays independent per sub-plot. Auto-X fits the union of every stack's data.
  • One hover drives everything: the vertical crosshair tracks the cursor's time position across all sub-plots, and the tooltip lists every visible
    series (all stacks and files) at that time, each with its own unit.
  • Sub-plot frames are pixel-aligned — the y-axis strip is sized to the widest one, so gridlines and cursor positions match across stacks.
  • The X axis (ticks + label) is drawn on the bottom sub-plot only; each sub-plot has its own legend.

Fixes and improvements

  • Tooltip values are hidden where a file draws no line (before its first visible point or after its last) instead of reporting a stale nearest row.
  • Axis ticks, legend values, and tooltip values now pick decimal places from the magnitude — 1e-4-scale readings no longer collapse to 0.0001.
  • EXCEPTION: output no longer prints clap's misleading -- escape tip (in tail-f_plot, -- is the file-group separator).

Compatibility notes

  • -- is now the file-group separator; it is no longer available as a bare argument escape.
  • The stdout status protocol emits N status lines for N files (previously always one). Single-file invocations are unchanged.

Win32 Signed Thumbprint

  • 1dddd32ca1ec85b6e676c66b8ceaa626ec905908