Skip to content

Visualisierung

9.5k Topics 104.4k Posts

Hilfe zu Visualisierungen

NEWS

  • 3D Animation mit Sweet Home in VIS

    31
    3
    0 Votes
    31 Posts
    4k Views
    Jey CeeJ
    @sigi234 scheint so. Das ist der Grund warum mir eine alte Idee wieder in den Kopf gekommen ist.
  • Vis Objekte verschieben fehlerhaft

    Moved
    2
    0 Votes
    2 Posts
    200 Views
    WintermuteW
    @ralle Ja, ist bei mir auch so. Mein aktueller Workaround: Mehrere Objekte markieren und mit den Cursortasten verschieben. Ist u.U. mühselig und langsam, dann bleiben die Abstände etc. aber erhalten.
  • Mehrere Variablen zusammenfassen

    1
    0 Votes
    1 Posts
    164 Views
    No one has replied
  • Visualisierung mit vis-Inventwo

    12
    0 Votes
    12 Posts
    2k Views
    A
    @legro [image: 1698144500423-536cfdad-b90a-42b0-8dd9-5431f190fba3-grafik-resized.png] So sieht das jetzt bei mir aus.
  • VIS-2 startet nicht

    4
    1
    0 Votes
    4 Posts
    821 Views
    peppiP
    @feuersturm Hi ich habe alles nochmals über den npm installiert. erlästartet aber nicht wie gewollt. nues Problem ==> https://forum.iobroker.net/topic/69458/vis-2-installiert-startet-importiert-nichts
  • Flot - Ausrichtung der X-Achsenbeschriftung

    8
    1
    0 Votes
    8 Posts
    736 Views
    A
    @homoran Wo finde ich denn diese Einstellung? EDIT: Oh mann... Unter Optionen - Zeitformat Wie kann man so blind sein? Das hab ich die letzten Jahre komplett übersehen Aber den Monat als Text geht nicht, oder? Oder die alten FLOTs nach eChart exportieren?
  • [gelöst] kein Scrollen mit VIS 2 und Iobroker.visu-App

    4
    0 Votes
    4 Posts
    378 Views
    R
    habe die Lösung hier gefunden
  • vis.0 (9564) Error: getaddrinfo ENOENT iobroker.net

    1
    1
    0 Votes
    1 Posts
    80 Views
    No one has replied
  • Modbusregister SMA Tri 8.0 & Visualisierung

    5
    1
    0 Votes
    5 Posts
    259 Views
    D
    @guinan sagte in Modbusregister SMA Tri 8.0 & Visualisierung: Kann mir jemand sagen aus welchen Registern die angezeigten Werte aus dem Bild kommen? https://www.sma.de/produkte/solar-wechselrichter/sunny-tripower-80-100 --> Parameter / Modbus
  • [Material Design CSS / MDCSS V2] Vis-Views zur Inspiration

    vis
    191
    22
    5 Votes
    191 Posts
    33k Views
    D
    @sigi234 danke schau ich mir an.
  • Fully Kiosk Vis Fehler

    9
    3
    0 Votes
    9 Posts
    774 Views
    Tg-71T
    Fully spinnt bei mir im Darkmodus. Dann fängt er an Farben zu invertieren - die er lieber in Ruhe lassen sollte. Ich hab ihn in Fully deaktiviert. Bei "Other Settings > Darkmode".
  • VISU OFFLINE BETREIBEN

    1
    0 Votes
    1 Posts
    170 Views
    No one has replied
  • Lovelace: custom: button-card: tap_action funktioniert nicht

    5
    3
    0 Votes
    5 Posts
    1k Views
    M
    @critter81 Welche Version habt ihr verwendet. Wenn ich die 3.5.0 nehme dann geht es. Version 4 scheint Probleme zu machen
  • nwesenheits Widget für Habpanel für 3 Zuständen

    1
    1
    0 Votes
    1 Posts
    130 Views
    No one has replied
  • iQontrol - Einbinden von eCharts

    2
    0 Votes
    2 Posts
    306 Views
    HomoranH
    @blockmove bitte Threadtitel anpassen!
  • Datenpunkte als Tabelle

    7
    0 Votes
    7 Posts
    790 Views
    ?
    @liv-in-sky Danke für den Tip. Meine TelePeriod sind bei den sogar 5min, weil alles andere für Verbrauchswerte keinen Sinn macht. Eigentlich ging noch größer Danke nochmals :)
  • [gelöst] VIS 2 und Smartphone

    3
    0 Votes
    3 Posts
    634 Views
    R
    @homoran sagte in VIS 2 und Smartphone: @roga sagte in VIS 2 und Smartphone: die App iobroker.vis auch mal mit iobroker.visu probiert? noch nicht, aber gerade eben ausprobiert und vielen Dank für den Tipp, hat funktioniert :-)
  • Habpanel Auflistung

    1
    0 Votes
    1 Posts
    84 Views
    No one has replied
  • Textfarbe für bestimmtes Level definieren

    Moved
    13
    0 Votes
    13 Posts
    4k Views
    spicerS
    Hallo Ich habe {wert:solarmanpv.0.61538217.229788178.B_Pdcg1;wert < 0 ? "#ff141c" :: wert > 0 ? "#28ad01" :: "#ef9101"} bei Color eingetragen. Leider ist der Text immer rot (#ff141c). Auch wenn ich {wert:0;wert < 0 ? "#ff141c" :: wert > 0 ? "#28ad01" :: "#ef9101"} eintrage, bleibt der Text auf rot. Habe ich etwas bei der Quelle falsch eingetragen? Unter Objekte sieht die Quelle so aus: [image: 1697816954826-auswahl_001.png] Mein Ziel ist es, dass bei negativem Wert der Text rot ist, bei positivem grün (#28ad01) und bei 0 orange (#ef9101). Edit: Problem gefunden. Es funktionierte die ganze Zeit. Nur wird die Textfarbe im VIS-Editor falsch angezeigt. In VIS-View stimmt es ;)
  • Eine eigene VIS mit Angular

    4
    0 Votes
    4 Posts
    518 Views
    ?
    @weggetor sagte in Eine eigene VIS mit Angular: @dp20eic Jein... Ich dachte mehr so an ein Rumpf-Angular-Projekt wie die wichtigen socket-Methoden (connect, getState etc. schon implementiert sind) Moin, ich bin kein Programmierer, kann über die Qualität nichts sagen, aber ich habe mal Bard gefragt, geht sicherlich auch über ChatGPT Spoiler Erstellen eines Angular-Projekts Zuerst erstellen wir ein neues Angular-Projekt mit dem Befehl ng new socket-demo. ng new socket-demo Dadurch wird ein neues Verzeichnis mit dem Namen socket-demo erstellt, das das Projekt enthält. Installieren des ngx-socket-io-Pakets Als nächstes installieren wir das ngx-socket-io-Paket, das die Socket.IO-Bibliothek für Angular bereitstellt. npm install ngx-socket-io --save Konfigurieren der Socket.IO-Module Um Socket.IO in unserem Projekt zu verwenden, müssen wir das SocketIoModule und das HttpClientModule in die AppModule importieren. import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppComponent } from './app.component'; import { SocketIoModule } from 'ngx-socket-io'; import { HttpClientModule } from '@angular/common/http'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, SocketIoModule.forRoot(), HttpClientModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { } Implementieren der Socket-Methoden In unserem Beispiel verwenden wir die folgenden Socket-Methoden: connect(): Verbindet den Client mit dem Socket-Server. getState(): Ruft den aktuellen Zustand des Socket-Servers ab. emit(): Emitiert ein Event an den Socket-Server. import { Component, OnInit } from '@angular/core'; import { Socket } from 'ngx-socket-io'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent implements OnInit { socket: Socket; constructor(private socketService: Socket) {} ngOnInit() { this.socket = this.socketService.connect(); } connect() { this.socket.connect(); } getState() { return this.socket.getState(); } emit() { this.socket.emit('my-event', { data: 'Hello, world!' }); } } Implementieren des HTML- und CSS-Codes In unserem Beispiel verwenden wir den folgenden HTML- und CSS-Code, um die Socket-Methoden zu verwenden. HTML <h1>Socket.IO Demo</h1> <button (click)="connect()">Connect</button> <p>{{getState()}}</p> <button (click)="emit()">Emit</button> !!!Verwende Code mit Vorsicht. Weitere Informationen!!! CSS h1 { font-size: 24px; } button { margin-bottom: 10px; } Verwende Code mit Vorsicht. Weitere Informationen Ausführen des Projekts Um das Projekt auszuführen, verwenden wir den Befehl ng serve. ng serve Dadurch wird das Projekt auf http://localhost:4200 gestartet. Ausgabe Wenn wir das Projekt öffnen, sehen wir den folgenden Text: Socket.IO Demo Connect Wenn wir auf die Schaltfläche "Connect" klicken, wird der Client mit dem Socket-Server verbunden. Socket.IO Demo Connected Wenn wir auf die Schaltfläche "Get State" klicken, wird der aktuelle Zustand des Socket-Servers abgerufen. Socket.IO Demo Connected { connected: true } Wenn wir auf die Schaltfläche "Emit" klicken, wird ein Event an den Socket-Server emittiert. Socket.IO Demo Connected { connected: true } Hello, world! Erweiterung des Beispiels In diesem Beispiel haben wir nur die grundlegenden Socket-Methoden implementiert. Um das Beispiel zu erweitern, können wir folgende Dinge tun: Erweiterte Socket-Methoden implementieren: Neben den grundlegenden Socket Quellen www.pluralsight.com/guides/conceptualizing-the-purpose-of-an-angular-module github.com/ffalt/hookayunterliegt Lizenz (MIT) github.com/khelilAppinio/m4dti_client_angular_for_test www.telerik.com/blogs/building-a-data-visualization-dashboard-kendo-ui-angular-socket-io developer.okta.com/blog/2018/11/30/web-app-with-express-angular-graphql Spoiler In Ordnung, hier ist ein Angular Projekt mit den Socket-Methoden connect, getState usw. enthalten: Server-Code Zuerst erstellen wir einen Server, mit dem wir die Socket-Verbindungen verwalten können. Dazu verwenden wir den Node.js-Webserver Express und das Socket.IO-Framework. const express = require("express"); const socketio = require("socket.io"); const app = express(); const server = app.listen(3000); const io = socketio(server); io.on("connection", (socket) => { console.log("Ein neuer Client hat sich verbunden"); // Socket verbinden socket.connect(); // Socket-Status abfragen socket.on("getState", () => { socket.emit("state", { connected: true, }); }); // Socket-Nachricht senden socket.emit("message", "Hallo Welt!"); }); Dieser Server erstellt einen Socket.IO-Server auf dem Port 3000. Wenn sich ein Client mit dem Server verbindet, wird der connect()-Handler aufgerufen. In diesem Handler wird der Socket verbunden und der getState()-Handler abonniert. Der getState()-Handler wird aufgerufen, wenn der Client den getState-Event empfängt. In diesem Handler wird der aktuelle Socket-Status zurückgegeben. Client-Code Um mit dem Server zu kommunizieren, erstellen wir einen Angular-Client. Dazu verwenden wir das ngx-socket-io-Modul. npm install @ngx-socket-io/client In unserer App-Komponente importieren wir das Socket-Service und konfigurieren es mit der URL des Socket-Servers. import { Component, OnInit } from "@angular/core"; import { Socket } from "@ngx-socket-io/client"; @Component({ selector: "app-root", templateUrl: "./app.component.html", styleUrls: ["./app.component.css"], }) export class AppComponent implements OnInit { constructor(private socket: Socket) {} ngOnInit() { this.socket.connect(); } } In der ngOnInit()-Methode verbinden wir den Socket mit dem Server. Um den Socket-Status abzufragen, verwenden wir den getState()-Methode. import { Component, OnInit } from "@angular/core"; import { Socket } from "@ngx-socket-io/client"; @Component({ selector: "app-root", templateUrl: "./app.component.html", styleUrls: ["./app.component.css"], }) export class AppComponent implements OnInit { constructor(private socket: Socket) {} ngOnInit() { this.socket.connect(); // Socket-Status abfragen this.socket.getState().subscribe((state) => { console.log("Socket-Status:", state); }); } } Dieser Code abonniert das getState()-Event und gibt den empfangenen Status in die Konsole aus. Beispiel-Ausgabe Socket-Status: { connected: true } Fertigstellung Um das Projekt zu testen, starten wir den Server mit dem Befehl node server.js. Anschließend starten wir den Client mit dem Befehl ng serve. Wenn wir die App öffnen, sollte der Socket-Status in der Konsole ausgegeben werden. Verbesserungen Dieses Projekt ist nur ein einfaches Beispiel für die Verwendung von Socket.IO in Angular. Es gibt noch viele weitere Möglichkeiten, die Socket-Methoden zu verwenden. Zum Beispiel können wir den Socket verwenden, um Nachrichten zwischen Clients zu senden oder um Daten von einem Server abzurufen. Hier sind einige Beispiele für Verbesserungen: Socket-Nachrichten senden: Wir können den Socket verwenden, um Nachrichten zwischen Clients zu senden. Dazu verwenden wir die emit()-Methode. Daten von einem Server abrufen: Wir können den Socket verwenden, um Daten von einem Server abzurufen. Dazu verwenden wir die on()-Methode, um den gewünschten Event zu abonnieren. Socket-Sicherheit: Wir sollten die Socket-Verbindungen sichern, um sie vor unbefugtem Zugriff zu schützen. Dazu können wir TLS/SSL verwenden. Spoiler In Ordnung, hier ist ein Angular Projekt mit den Socket-Methoden connect, getState usw. enthalten: Server-Code Zuerst erstellen wir einen Server, mit dem wir die Socket-Verbindungen verwalten können. Dazu verwenden wir den Node.js-Webserver Express und das Socket.IO-Framework. const express = require("express"); const socketio = require("socket.io"); const app = express(); const server = app.listen(3000); const io = socketio(server); io.on("connection", (socket) => { console.log("Ein neuer Client hat sich verbunden"); // Socket verbinden socket.connect(); // Socket-Status abfragen socket.on("getState", () => { socket.emit("state", { connected: true, }); }); // Socket-Nachricht senden socket.emit("message", "Hallo Welt!"); }); Dieser Server erstellt einen Socket.IO-Server auf dem Port 3000. Wenn sich ein Client mit dem Server verbindet, wird der connect()-Handler aufgerufen. In diesem Handler wird der Socket verbunden und der getState()-Handler abonniert. Der getState()-Handler wird aufgerufen, wenn der Client den getState-Event empfängt. In diesem Handler wird der aktuelle Socket-Status zurückgegeben. Client-Code Um mit dem Server zu kommunizieren, erstellen wir einen Angular-Client. Dazu verwenden wir das ngx-socket-io-Modul. npm install @ngx-socket-io/client In unserer App-Komponente importieren wir das Socket-Service und konfigurieren es mit der URL des Socket-Servers. import { Component, OnInit } from "@angular/core"; import { Socket } from "@ngx-socket-io/client"; @Component({ selector: "app-root", templateUrl: "./app.component.html", styleUrls: ["./app.component.css"], }) export class AppComponent implements OnInit { constructor(private socket: Socket) {} ngOnInit() { this.socket.connect(); } } In der ngOnInit()-Methode verbinden wir den Socket mit dem Server. Um den Socket-Status abzufragen, verwenden wir den getState()-Methode. import { Component, OnInit } from "@angular/core"; import { Socket } from "@ngx-socket-io/client"; @Component({ selector: "app-root", templateUrl: "./app.component.html", styleUrls: ["./app.component.css"], }) export class AppComponent implements OnInit { constructor(private socket: Socket) {} ngOnInit() { this.socket.connect(); // Socket-Status abfragen this.socket.getState().subscribe((state) => { console.log("Socket-Status:", state); }); } } Dieser Code abonniert das getState()-Event und gibt den empfangenen Status in die Konsole aus. Beispiel-Ausgabe Socket-Status: { connected: true } Fertigstellung Um das Projekt zu testen, starten wir den Server mit dem Befehl node server.js. Anschließend starten wir den Client mit dem Befehl ng serve. Wenn wir die App öffnen, sollte der Socket-Status in der Konsole ausgegeben werden. Verbesserungen Dieses Projekt ist nur ein einfaches Beispiel für die Verwendung von Socket.IO in Angular. Es gibt noch viele weitere Möglichkeiten, die Socket-Methoden zu verwenden. Zum Beispiel können wir den Socket verwenden, um Nachrichten zwischen Clients zu senden oder um Daten von einem Server abzurufen. Hier sind einige Beispiele für Verbesserungen: Socket-Nachrichten senden: Wir können den Socket verwenden, um Nachrichten zwischen Clients zu senden. Dazu verwenden wir die emit()-Methode. Daten von einem Server abrufen: Wir können den Socket verwenden, um Daten von einem Server abzurufen. Dazu verwenden wir die on()-Methode, um den gewünschten Event zu abonnieren. Socket-Sicherheit: Wir sollten die Socket-Verbindungen sichern, um sie vor unbefugtem Zugriff zu schützen. Dazu können wir TLS/SSL verwenden. VG Bernd

270

Online

32.8k

Users

82.8k

Topics

1.3m

Posts