Skip to content

cardchart

tt-tom17 edited this page Jan 7, 2025 · 2 revisions

cardChart (ab TS-Script v.3.7.0)

ab Release v3.7.0

image

Für das unten abgebildete Blockly-Script wurden die Werte eines Datenpunktes "sonoff.0.DZG_DWSB20_2H.DZG_Leistung_Aktuell" in einer Influx 2.0 Datenbank gespeichert.

Es wird für das Skript ein Datenpunkt (hier im Beispiel "0_userdata.0.Test.cardChart.txt") benötigt, um das Chart für die cardChart aufzubereiten.

Alias-Erstellung:
Es wird lediglich ein Alias vom Gerätetyp "Info" benötigt: image

PageItem Beispiel:

let CardChartExample: PageType =
{
    "type": "cardChart",
    "heading": "Stromzähler L1+L2+L3",
    "useColor": true,
    "subPage": false,
    "parent": undefined,
    "items": [{ 
                id: 'alias.0.NSPanel_1.cardChart', 
                yAxis: 'Leistung [kW]', 
                yAxisTicks: [2,4,6,8,10,2,4,6,8,20,2], // leave empty for automatic calculation of the y-axis
                onColor: Yellow
             }]
};

CardChart spezifische Angabe:

  • yAxis : name der y-Achse
  • yAxisTicks : Werte-Skala der yAchse Wird in [``, ``, ``] gefasst und enthält eine kommaseparierte Liste an Werten
  • onColor : Farbe der Balken

image

Blockly für Influx 2.0

image

Zum Blockly

Javascript für History Adapter

var sourceDP = 'alias.0.Wohnzimmer.Heizung.ACTUAL';
var targetDP = '0_userdata.0.Test.chartTest';
var rangeHours = 24;
var maxXAchsisTicks = 6;
var historyInstance = 'history.0';

on({id: sourceDP, change: "any"}, async function (obj) {
    sendTo(historyInstance, 'getHistory', {
        id: sourceDP,
        options: {
            start:     Date.now() - (60 * 60 * 1000 * rangeHours),
            end:       Date.now(),
            count:     rangeHours,
            limit:     rangeHours,
            aggregate: 'average'
        }
    }, function (result) {
...

Link zum Script CardChart_History.js

Clone this wiki locally