@meshmakers/octo-meshboard 3.5.570 → 3.5.590
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
|
@@ -587,6 +587,55 @@ interface BarChartWidgetConfig {
|
|
|
587
587
|
}
|
|
588
588
|
```
|
|
589
589
|
|
|
590
|
+
### Line Chart Widget
|
|
591
|
+
Displays time series as line or area charts; every value of `seriesGroupField` becomes one line.
|
|
592
|
+
Series from further queries, formula series and per-series options are described in the library's
|
|
593
|
+
`CLAUDE.md` (section *Line-chart resolution-aware fan-out* and the sections starting with *Line chart:* and
|
|
594
|
+
*Line and bar chart:*).
|
|
595
|
+
|
|
596
|
+
```typescript
|
|
597
|
+
interface LineChartWidgetConfig {
|
|
598
|
+
type: 'lineChart';
|
|
599
|
+
chartType: 'line' | 'area';
|
|
600
|
+
categoryField: string; // date/time field of the X axis
|
|
601
|
+
seriesGroupField: string; // one line per value
|
|
602
|
+
valueField: string;
|
|
603
|
+
unitField?: string;
|
|
604
|
+
excludedSeriesGroupValues?: string[]; // series group values left out (see below)
|
|
605
|
+
// ... legend, markers, filters, additionalSeries, primarySeries, stacked, bucketMinutes
|
|
606
|
+
}
|
|
607
|
+
```
|
|
608
|
+
|
|
609
|
+
**Leaving series out (`excludedSeriesGroupValues`).** A grouped chart can leave out chosen series of its
|
|
610
|
+
primary query, for example a register that duplicates another one. On the fan-out paths (resolution-aware charts, one line per source entity or per group) the values are not queried; in plain grouping the rows the query returns for them are dropped before the series are formed. Either way they are not drawn
|
|
611
|
+
and not in the legend, on the raw archive as on rollups (no query column is needed, so it works where a
|
|
612
|
+
row filter on the group column fails). Board JSON of a widget config:
|
|
613
|
+
|
|
614
|
+
```json
|
|
615
|
+
{
|
|
616
|
+
"chartType": "line",
|
|
617
|
+
"categoryField": "window_start",
|
|
618
|
+
"seriesGroupField": "obisCode",
|
|
619
|
+
"valueField": "amount.value",
|
|
620
|
+
"resolutionAware": true,
|
|
621
|
+
"requiredAggregation": "SUM",
|
|
622
|
+
"aggregateSeriesByGroup": true,
|
|
623
|
+
"excludedSeriesGroupValues": ["1-1:2.9.0 G.03R"]
|
|
624
|
+
}
|
|
625
|
+
```
|
|
626
|
+
|
|
627
|
+
- Matching is exact on the stored `seriesGroupField` value: case and blanks as stored, before any display
|
|
628
|
+
label. A value that does not occur changes nothing.
|
|
629
|
+
- A resolution-aware chart without an entity scope and without `aggregateSeriesByGroup` draws one merged
|
|
630
|
+
line. When an excluded value occurs among the source entities, that line covers only the source entities
|
|
631
|
+
of the other values (at most 5000 entities are read; entities without a value of the group field drop out).
|
|
632
|
+
- When every value is excluded, or the exclusion leaves no value, the chart shows its normal no-data state.
|
|
633
|
+
- The entity-selector scope still applies to the remaining series. Additional series are not affected
|
|
634
|
+
(hide them with `visible: false`).
|
|
635
|
+
- The key is written only when the list is not empty; charts without it load and save unchanged.
|
|
636
|
+
- In the dialog: *Field Mapping → Excluded series*, shown once a series group field is set. Choosing another
|
|
637
|
+
series group field or another query clears the list.
|
|
638
|
+
|
|
590
639
|
### Stats Grid Widget
|
|
591
640
|
Displays multiple KPIs in a grid layout.
|
|
592
641
|
|