Sidebar: rework the value readout

Open
#69 0 comments 0 reactions 1 assignee View on GitHub

@mrcsin is already working on this.

Since Sep 10, 2026.

Assessment

This issue has not been assessed yet.

Description

question

Why

The sidebar's numbers are hard to use. The grey range on each row does not say what period it covers, and it is not the pen's data range.

What it actually is today

It is the axis range over the visible window, padded:

  • ScaleRangeText reads the PenScale stored for the pen (Legend/TrendLegendRowViewModel.cs:90-100, Chart/TrendChartViewModel.cs:163-166).
  • PenScaleModel.ComputeRange takes the minimum and maximum of the envelope columns inside the navigation window, then adds 5 % on each side (Core/Trends/PenScaleModel.cs:60-85, padding at :191-201). A flat series becomes plus or minus 0.5.
  • When the window holds no column it falls back to the whole fetched band, which is the visible window plus one window width on each side (Chart/HistoryPrefetch.cs:12).
  • Every pen sharing an axis shows identical numbers, because the range is per axis and the axis key is the group. #66 removes that half.

So the operator reads a padded axis bound and takes it for a measured extreme.

To decide

  • What a row should carry: current value, value at the cursor, minimum and maximum over the visible window without padding, mean, the pen's configured scale, units.
  • Whether the period is stated once in the header or chosen per view: visible window, last hour, whole archive.
  • Whether the layout becomes a table with columns instead of the current six-cell row (Legend/TrendLegendView.axaml:30-65), and whether the column set is a setting.
  • Where minimum and maximum come from. The envelope carries Min, Max and Center (Core/Trends/PenHistoryEnvelope.cs:42-50); at a coarse layer Min and Max are extremes of decimated buckets while Center is not. The two answers diverge as the layer coarsens, and the row has to say which it shows.

Discussion first, then a plan. Nothing here should be built before the shape is settled.

Dominant language
C#
Stars
0
Forks
0
Avg merge
18m
Merged PRs (30d)
42

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Semiteq/SemiPlot

All issues in Semiteq/SemiPlot

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.