- BTrDB stores data aggregated at several resolutions.
- Like a file browser is used to explore a file system, the plotter makes visible all the data that BTrDB can publish. It is designed to make exploration as fluid as possible.
The time axis is peculiar but perhaps most useful for deep-diving through time as fluidly and clearly as possible.
Calendar rows: The axis has two rows: higher resolution on top, lower resolution on bottom. It's a bit like a calendar that can display days inside a month—but with the flexibility to switch to hours inside a day, seconds inside an hour, whatever unit labels fit at the user's current zoom level:
Regions, not points: A day or a month are not points in time, rather they represent ranges of time. Since we use a calendar-like axis, we do not display ticks for each label. Rather, for clarity without distraction, we only explicitly show boundaries when mousing over labels.
Screenshots at each level:
At a high-level, these are the design primitives used to promote discoverability:
- Mouse-overs - show axis label boundaries
- Cursor cues - axis label clickability (for selecting)
- Double-clicking - used to zoom into anything
- Clicking out or pressing escape - remove a highlight or selection
- Explicit when needed - not obvious, so we say "Hold shift to inspect"
- Toggling - Choose human/raw units, or local/standard time directly on the plot
We look at each in detail in next sections.
To know exact boundaries for each label, mouse over them:
You can click each of the labels to select them:
When a selection is made, details about all the points within that selection are displayed as annotations, as you can see above.
Hold shift to inspect points. Change units to see raw data.
When highlighting or making selections, the cursor snaps to the units of the hovered surface:
- BTrDB units
- Axis units
Drag when holding shift to make a manual selection:
If making the selection on axis, cursor will snap to the axis units:
Double-clicking works in most contexts to zoom.
Double-click an axis label:
Double-click a selection directly:
Double-click a highlight: