β¨ New Features & β¬οΈ Improvements & π Bug fixes
This release;
- fixes five reported issues
- improves newly added Y-axis tick labels.
- adds entity based "Hide by Default" feature
- adds Sections-view auto-height / fill support
- improves candlestick charts, moving-average performance,
Big thanks to everyone who filed detailed reports with screenshots and example configs β it made every one of these much faster to pin down.
π Bug fixes
Live charts no longer redraw the whole line on every update β #251
Daily counters no longer show 0 with aggregate_func: max β #248
Offset / "yesterday" lines no longer stop at the now line β #247
Graph no longer dips below zero with smoothing β #243
Single-day bars no longer cut off at the edge β #233
β¨ Features
π Per-entity "Hide on Load" β #238
You can now hide individual entities on load instead of only all-or-nothing. Each entity has an Auto Hide option (Advanced tab β Hide on Load), or in YAML:
entities:
- entity: sensor.a
auto_hide: true # hidden until you tap its legend item
- entity: sensor.b # stays visibleTapping the legend reveals a hidden series as expected, and the reveal sticks β it no longer re-hides on the next refresh. The card-wide auto_hide_entities still works and, when set, takes precedence over the per-entity values.
π Sections view: Auto height & fill β #252
The card now participates in Home Assistant's Sections layout sizing β the "does not fully support resizing" warning is gone. Leave Height empty (or set height: auto) and the chart fills the grid cell it's given instead of a fixed pixel height:
height: auto # fill the cell; size the card via the Layout tabA numeric height still pins the chart to that many pixels as before. To match a neighbouring card, size this card's cell in the Layout tab and the chart fills it.
β±οΈY-axis duration & template label formats β #241
Y-axis labels can now be formatted as durations or via a safe expression template β no JavaScript executed, just a small whitelisted grammar:
y_axis_format: "h:mm" # 5400 -> 1:30 (also h:mm:ss, mm:ss, d h:mm)
duration_unit: s # the raw unit of the sensor value (default: seconds)
# or a template:
y_axis_format: "{fixed(value/1000,1)} kW" # 2350 -> "2.4 kW"Follow-up fix (small ranges): on tight ranges, duration formats could render two different ticks as the same label (e.g. two ticks under a minute both showing 0:00), producing doubled tick values. Ticks now snap to steps the format can actually distinguish, and any identical labels are de-duplicated β no more repeated values.
Follow-up fix (secondary axis): with a locked lower_bound_secondary (or upper) plus a Min Y2 Range, the axis expanded symmetrically and pushed the locked edge past zero (a stray -0:01 tick and a ballooned range). Minimum-range growth now respects a locked bound β it grows only away from it.
β¬οΈ Improvements
π―οΈCandlestick OHLC on hourly / daily grouping
Candlestick charts grouped by H (hour) or date rendered as thin lines β the open, high, low and close all collapsed to one value. (2H / 4H and finer groupings were fine.)
Cause: hourly/daily grouping fetched a single statistics row per candle, so there was nothing to build an open/high/low/close from.
Fix: candlestick charts now fetch sub-bucket samples β 5-minute data for hourly candles and hourly data for daily candles β so each candle shows a real body again. Other chart types and groupings are unaffected.
π Candlestick tooltip: Change % and Altitude %
The candlestick tooltip now shows two extra values below O/H/L/C: Change β the openβclose move as a signed percentage (C β O) / O (green when up, red when down), and Altitude β the high/low range as a percentage (H β L) / L
πββοΈββ‘οΈ Faster moving averages
Moving-average overlays are now computed with an O(n) sliding window instead of recomputing the full window at every point. On live feeds (e.g. crypto prices) with long periods like MA-300 and several averages across multiple cards, this sharply cuts CPU and memory use. The drawn lines are identical β this is purely a performance change.