LabVIEWForum.de
daten vergleich (array+konstante) - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: daten vergleich (array+konstante) (/Thread-daten-vergleich-array-konstante)



daten vergleich (array+konstante) - Jäyster - 07.05.2008 20:12

guten abend!

gleich im vorraus: ich bin absoluter LabVIEW noob,muss aber ein projekt machen und da gehts um folgendes:
ich bekomm daten von einem sensor (dämpferlänge eines downhillers), die rechne ich um in den federweg (2.8...) und lass sie dann beide in einem xy diagramm darstellen. den maximalen federweg zu der zeit x hab ich irgendwie schon geschafft!welche wunder!

jetzt steht folgendes an: ich würde gerne die kurve einfärben die überhalb eines gewissen federweges liegt (oder was ähnliches) und dass man diese konstante verändern verändern kann (numeric controll oder ähnliches)!

kann mir irgendwer weiterhelfen?


greetz!

LabVIEW 8.2


daten vergleich (array+konstante) - Lucki - 08.05.2008 07:46

Ich mache das so, daß ich den Teil der Kurve, die eingefärbt sein soll, als zweiten Plot über den ersten Plot lege. Dabei beachten: Plot 0 ist ganz im Vordergrund. Die hervorgehobene Teilkurve sollte also Plot 0 sein. Dazu gibt es hier von mir Beispiele, aber frag mich nicht wo.


daten vergleich (array+konstante) - s200rs - 08.05.2008 07:49

' schrieb:ich würde gerne die kurve einfärben die überhalb eines gewissen federweges liegt (oder was ähnliches) und dass man diese konstante verändern verändern kann (numeric controll oder ähnliches)!

Hallo,

so wie ich es verstanden habe, willst Du die Meßreihe auswerten, indem Du die Meßwerte mit einem variabel einstellbaren Grenzwert vergleichst. Liegt ein Wert oberhalb des Grenzwertes soll er im Diagramm andersfarbig als die, die unterhalb der Grenze liegen, dargestellt werden.

Also, einen Graphen abschnittsweise mit verschiedenen Farben in einem LV-Diagramm darzustellen, geht, meinens Wissens nach, nicht. Das einfachste, was mir einfällt ist, Dein Array zu teilen: in einen Graphen für alle Werte, die OK sind und einen für alle, die oberhalb der Grenze liegen. Liegt der Meßwert unterhalb der Grenze, bekommt der "normale" Graph den Meßwert und der "fehlerhafte" 0 und umgekehrt. Diese beiden Graphen läßt Du dann zusammen in einem Diagramm anzeigen. Die Farbe der Linien kannst Du am Diagramm selbst oder per Eigenschaftsknoten einstellen.

Eine andere Möglichkeit besteht darin, daß du Dir Dein Diagramm selbst bastelst, indem Du ein Bildelement verwendest. Entweder machst Du alles manuell als Bitmap oder, einfacher mit den Bild-Sub-VIs. Dann Brauchst Du nur die Farbe der Linie ändern, sobald der Grenzwert überschritten wird und wieder zurück, wenn der Wert wieder unter die Grenze sinkt.

Gruß Andreas


daten vergleich (array+konstante) - Achim - 08.05.2008 08:09

Es gibt noch ne andere Möglichkeit, die kommt glaub ich von eg:

Du legst zwei (oder mehr) gleiche Kurven übereinander. Die gültigen Werte von Kurve 1 (grüne Kurve) bleiben unangetastet, die ungültigen werden durch "NaN" ersetzt. Umgekehrt bei der zweiten (roten) Kurve: Die gültigen Werte werden mit "NaN" ersetzt, die ungültigen werden nicht verändert. Jetzt hast du als sichtbares Ergebnis ein Kurve, die irgendwann die Farbe wechselt.

Der Hintergrund: "NaN"-Werte werden nicht dargestellt, werden aber als Werte für eine Kurve akzeptiert

Es gibt dazu auch Beispiele irgendwo hier im Forum...

Gruß
Achim


daten vergleich (array+konstante) - s200rs - 08.05.2008 08:23

' schrieb:Der Hintergrund: "NaN"-Werte werden nicht dargestellt, werden aber als Werte für eine Kurve akzeptiert

Wußte ich gar nicht, ich hab das (wie oben beschrieben) mit "0" gemacht, hat aber eben den Nachteil, daß es bei manchen Interpolationsstilen des Graphen nicht so schön aussieht, aber danke für die InfoWink-2

Gruß Andreas


daten vergleich (array+konstante) - Achim - 08.05.2008 11:07

' schrieb:Wußte ich gar nicht, ich hab das (wie oben beschrieben) mit "0" gemacht, hat aber eben den Nachteil, daß es bei manchen Interpolationsstilen des Graphen nicht so schön aussieht,

Und noch dazu falsch ist! "0" ist doch auch ein möglicher Messwert...woher soll der (unbedarfte) Benutzer denn wissen, was nun korrekte Werte sind und was nicht?!


daten vergleich (array+konstante) - s200rs - 08.05.2008 11:36

' schrieb:Und noch dazu falsch ist! "0" ist doch auch ein möglicher Messwert...woher soll der (unbedarfte) Benutzer denn wissen, was nun korrekte Werte sind und was nicht?!

da hast Du allerdings recht. Diesen Fall habe ich nicht berücksichtigt. Blush


daten vergleich (array+konstante) - Lucki - 08.05.2008 13:02

' schrieb:Es gibt noch ne andere Möglichkeit, die kommt glaub ich von eg:
Der Hintergrund: "NaN"-Werte werden nicht dargestellt, werden aber als Werte für eine Kurve akzeptiert
Habs mal so gemacht, nur mit einer kleinen Modifikation. Wenn man es so macht wie Du, dann entstehen beim Farbwechsel jedesmal Lücken, d.h der letzte grüne Punkt ist nicht mit dem ersten roten Punkt verbunden. Dies optische Unsauberkeit vermeidet man, wenn man die Originalkurve einfach so läst wie sie ist und die rote Kurve darüber legt. Damit sie das wirklich tut, muß sie Plot 0 sein und die Originalkurve Plot 1
Lv82_img [attachment=12435]


daten vergleich (array+konstante) - Jäyster - 09.05.2008 13:27

hey,also erst mal danke an lucki...das hat uns schon um einiges weitergebracht!

was uns noch kopfzerbrechen bereitet ist, dass bei unserm signal manche flanken nicht angezeigt werden bzw. der schwellwert im graphen nicht überall auf der selben höhe ist!
würden noch gerne den prozentanteil berechnen der gerade über der schwelle liegt...so wie das jetzt eingezeichnet ist,ist es natürlich ein blödsinn...wie kann ich das als zahlenwert ausgeben lassen?
wir haben uns noch überlegt die "peaks" zu zählen...also wie oft die kurve einen gewissen schwellwert überschreitet!ist das schwer zu realisieren?

schon mal danke im voraus!:-)

im ersten post ist auch schon ein testfile,aber aber im angehängten ist das delta t kürzer, funktioniert aber trotzdem nicht!