WARNING
This is a pre-release, some functionality might be changed in the final "normal" release (like a name of an option, behaviour of a feature).
Please test, report bugs, provide observations.
What's Changed
features:
- feat: color_thresholds per entity by @ildar170975 in #1383
- feat: Static value label by @ildar170975 in #1391
- feat: Hide inactive bars by @ildar170975 in #1396
- feat: spacing between bar groups (multiple entities) (#2) + Overlapping bars by @ildar170975 in #1376
- feat: Add options validation by @ildar170975 in #1401
- feat: add Fill Threshold feature - making graph filling height customizable by @Haluska77 in #1205
- feat: Add fixes & docs for fill_baseline by @ildar170975 in #1408
- feat: Add icon_color by @ildar170975 in #1411
- feat: Add CSS vars for opacity & border-radius for Y-axis labels & static labels by @ildar170975 in #1412
- feat: Add tests for isNumeric() by @ildar170975 in #1416
- feat: Add tests for checkNumericOption(), checkIntegerOption() functions by @ildar170975 in #1417
- feat: Check lower/upper bounds in buildConfig() by @ildar170975 in #1420
- feat: Check color thresholds by @ildar170975 in #1421
- feat: Refactor alignment for header, name, icon by @ildar170975 in #1413
- feat: per-entity "animate" by @ildar170975 in #1428
- feat: Bars animation by @ildar170975 in #1429
- feat: Move axis-specific options into a "y_axis" config structure by @ildar170975 in #1434
- feat: Add a custom baseline for "bars" graph by @ildar170975 in #1443
- feat: Inverted graph by @ildar170975 in #1445
- feat: Use line & bar graphs together by @ildar170975 in #1399
- feat: Add a conditional stroke for a bar by @ildar170975 in #1455
- feat: Add a tooltip for "Name" by @ildar170975 in #1463
- feat: Render errors by @ildar170975 in #1465
fixes:
- fix: Line color interpolation of stop values when there are values in a middle by @ildar170975 in #1382
- fix: computeColor() for color_thresholds by @ildar170975 in #1384
- fix: extend d3-interpolateRgb() to process CSS vars by @ildar170975 in #1270
- fix: computeColor() for color_thresholds #2 by @ildar170975 in #1385
- fix: Number format optimizations by @ildar170975 in #1386
- fix: getFactor() minor optimization by @ildar170975 in #1387
- fix: Datetime functions fixes & optimizations by @ildar170975 in #1388
- fix: Blank before a percent by @ildar170975 in #1390
- fix: Labels order by @ildar170975 in #1393
- fix: Static value label with unit by @ildar170975 in #1394
- fix: typo in renderStaticLabels by @ildar170975 in #1395
- fix: Add cached arrays by @ildar170975 in #1397
- fix: Minor fixes & optimizations by @ildar170975 in #1398
- fix: Datetime functions fixes & optimizations (#2) by @ildar170975 in #1400
- fix: computeThresholds for negative stops by @ildar170975 in #1403
- fix: Graph constructor - pass a dictionary by @ildar170975 in #1404
- fix: Minor fixes & optimizations (#2) by @ildar170975 in #1405
- fix: Minor fixes & optimizations (#3) by @ildar170975 in #1407
- fix: getFactor(): use a default factor "1" for secondary axis if value_factor_secondary undefined by @ildar170975 in #1415
- fix: Check numeric values - allow strings by @ildar170975 in #1418
- fix: getFactor() optimization by @ildar170975 in #1419
- fix: restore a passing lint on dev by @Olen in #1425
- fix: use "_" prefixes for private members for Graph by @ildar170975 in #1427
- fix: pass the built config to checkLineStyle by @Olen in #1430
- fix: use "_" prefixes for private members by @ildar170975 in #1431
- fix: upper_bound check by @ildar170975 in #1436
- fix: Simplify font_size initializaion by @ildar170975 in #1437
- fix: Replace methods by properties by @ildar170975 in #1438
- fix: calcPoints & reducer to calculate the 1st point by @ildar170975 in #1439
- fix: gradient for color thresholds by @fran68 in #1361
- fix: Color thresholds fixes after merging PR 1361 by @ildar170975 in #1441
- fix: Bounds - prepare parsed values in buildConfig by @ildar170975 in #1442
- fix: Baseline edge cases by @ildar170975 in #1444
- fix: Reduce coords for bars right in update() by @ildar170975 in #1447
- fix: Hide inactive bars: improve "inactive" attribute by @ildar170975 in #1448
- fix: renderIcon() - minor fixes by @ildar170975 in #1450
- fix: "entity" variable naming by @ildar170975 in #1451
- fix: setTooltip() - process bars differently, process 1st line point differently by @ildar170975 in #1449
- fix: more tooltip fixes by @ildar170975 in #1452
- fix: Use line & bar graphs together: fix for total_bars_in_group by @ildar170975 in #1454
- fix: Remove a useless comparing of entities in setConfig() by @ildar170975 in #1456
- fix: getBoundary() - fix fallback by @ildar170975 in #1458
- fix: _reducer() to prevent a wrong calculation of max/min values by @ildar170975 in #1459
- fix: Update version of dev to 0.14.0-dev.2 by @ildar170975 in #1460
- fix: Align getEndDate() methods by @ildar170975 in #1462
- fix: Periodic update by @ildar170975 in #1461
- fix: shouldUpdate() - check changes in _hass by @ildar170975 in #1464
- fix: checkEntities() - process shorthand strings by @ildar170975 in #1466
docs:
- docs: fixed description for Log10 by @ildar170975 in #1414
- docs: Add a remark about HACS by @ildar170975 in #1426
- docs: Do not use a "list" word for a "show" object by @ildar170975 in #1435
- docs: Added "Supported color formats" by @ildar170975 in #1440
- docs: add "invert" option by @ildar170975 in #1446
- docs: Add a description for static lines labels by @ildar170975 in #1453
New Contributors
- @Haluska77 made their first contribution in #1205
- @Olen made their first contribution in #1425
- @fran68 made their first contribution in #1361
Full Changelog: v0.14.0-dev.1...v0.14.0-dev.2
More detailed about new features
Static value label - show a value label for static lines added in v0.14.0-dev.1:
New “baseline” option - can be specified as a global card option & per-entity.
Any numeric value can be specified for the baseline option.
baseline=0, a zero static line is added:
Use line & bar graphs together - draw linear graphs along with bars:
Inverted graph - invert a graph vertically, might be useful for some parameters when smaller values should be shown on a top, bigger – on a bottom:
Water level in a well - a "0" level is at the top:
Adding a huge baseline (like baseline: 100) will make a different presentation where "0" values are "peaks":
Spacing between bar groups - customize a spacing between groups of bars:
Overlapping bars - show bars placed on each other:
New bars animation:
Hide inactive bars - when a legend for some entity is selected, only bars for this entity are shown:
Conditional stroke for a bar - a tiny improvement to make bars distinguishable with bar_spacing: 0 (also introduces new CSS theme variables to tune the stroke for a particular client device):
”color_thresholds” per entity - allow to define color thresholds in a more flexible way & only where it is needed:
Per-entity "animate" option - disable an animation for some curves, like for a static line as shown below:
Add a tooltip for "Name" - can be useful for long names which do not fit on some viewports:
New ”icon_color” option - customize an icon color:
Refactored alignment for header, name, icon - customize a position of a “name” & “icon” elements in a more flexible way.
New “y_axis” config option - axis-specific options (like lower/upper_bound) are moved into this new structure; legacy configs are also supported.
More CSS theme variables - for opacity & border-radius for Y-axis labels & static labels.
Add options validation - a low-level improvement: if an invalid value is defined for a numeric option (like 123abc instead of 123), then a default value is used instead & a corresponding warning message is logged in a browser console. All numeric options are checked.
Additionally, color_thresholds & lower/upper_bound are checked for integrity, values & consistency.


