Chart Klasse c#

Gast #2897357
Lesenswert?

Hallo Leute,
ich möchte am Pc Daten vom Mikrocontroller in einer Graphik darstellen.
Das ganze möchte ich in C# realisieren. Die Daten vom Mikrocontroller 
zum Pc bringe ich über die Serielle Schnittstelle und das kriege ich 
auch schon recht gut hin. Für den Graph verwende möchte ich die Chart 
Klasse verwenden.
Was ich jetzt noch nicht weiß wie ich die Daten die ich alle 100mS 
kriege vernünftig anzeige und ob ich für die x Achse die 100mS Takt 
verwenden soll.
Wie soll man die Daten vernünftig in "Series" packen und wann giebt man 
das Ganze aus.
Entschuldigt meine Unwissenheit bin noch ein blutiger Anfänger.

Vielen Dank für Eure Hilfe

sepp




















d
#2897401
Lesenswert?

Das kommt drauf an, was du für Daten hast und wie die Zuordnung ist.

Wenn du zum Beispiel pro Zeiteinheit nur einen Wert hast (sagen wir mal, 
du misst alle 100ms eine Spannung), dann sind diese Werte nur eine 
Series im Chart-Control.

Deine Zuordnung ist also:

t(ms)    U(V)
[0]     [2.1]
[100]   [2.2]
[200]   [2.3]
[300]   [2.4]
...

(Angenommen, die 2.x sind deine gemessenen Werte)

Diese Datenzuordnung (z.B. als Dictonary verpackt) sind eine Series.
Gast #2899967
Lesenswert?

Vielen Dank für Deine Hilfe.
Ich habe ein wenig experimentiert und dabei bin ich auf folgendes 
Problem gestoßen.
Ich möchte in meinen Series immer gleich viele Einträge haben das heißt 
die ältesten sollten gelöscht werden und die neuen vorne dazugegeben ist 
das möglich.

Ich hoffe ich hab mich richtig ausgedrückt!

Gruß
Sepp
Gast #2901779
Lesenswert?

Hallo die Lösung ist eigentlich ganz einfach.

Du legst eine Queue (FIFO) oder eine List mit den Datenpunkten an. Dann 
bindest du diese Queue mittels Databinding an dein Chart. (Beispiele 
findest du genügend im Internet) Beim einfügen in die Queue prüfst du ob 
eine bestimmte Größe überschritten ist und entnimmst ggf. das älteste 
Element aus der Queue/List. Deine Grafik solltest du nach dem einfügen 
und entfernen von Elementen aus der List natürlich aktuallisieren.

Viele Grüße, Warhawk
#2902644
Lesenswert?

sepp schrieb:
> Wenn ich jetzt aber in den Eigenschaften meiner Chart unter DataSurce
> mein Queue auswählen will klappt das nicht.
> Muss ich die Bindung irgendwie anders machen?

Woher sollen wir denn wissen, wie du es machst und was dabei nicht 
funktioniert?

Es gibt im WWW unzählige Beispielcodes für DataBindings unter C#. Such 
einfach mal ein bisschen und probiere rum. Dabei kann man ne Menge 
lernen. Ich glaube ja, du solltest dich erstmal mit den Grundlagen von 
OO-Programmierung und C# auseinander setzen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren