18.05.2009, 19:56
(Dieser Beitrag wurde zuletzt bearbeitet: 18.05.2009 20:01 von LabVIEWDompteur.)
Beitrag #1
|
LabVIEWDompteur
LVF-Grünschnabel
Beiträge: 20
Registriert seit: May 2009
2010 SP1
-
DE
81377
Deutschland
|
Plotlegende ausgeblendeter Kurven (Plots) entfernen?
Mithilfe der Propertynodes Act(ive)Plot und Plot.Visible kann ich wie im Bild ausgeführt einzelne Traces/Kurven im Waveformgraph ausblenden. Leider habe ich noch keine Möglichkeit gefunden, auch die Plotlegende dahingehend zu beeinflussen, dass für nichtangezeigte Traces/Kurven auch der Eintrag in der Plotlegende dazu entfernt wird.
Warum blende ich Traces/Kurven aus? -> Weil die entsprechende Trace/Kurve nicht genutzt wurde und so keine Daten enthält bzw. ein 0 Array.
Beispielsweise wurden Traces/Kurven 1 und 3 genutzt und enthalten ernsthafte Daten. So möchte ich in der Plotlegende:
- Trace1
- Trace3
stehen haben.
Werden alle genutzt:
- Trace1
- Trace2
- Trace3
Weiss jemand Rat? Falls auch ohne Propertynodes und mit anderen Tricks möglich immer her damit!
Vielen Dank.
EDIT:
Mir ist gerade aufgefallen, dass ich im Bild oben bei der Pfeilbeschriftung einen Fehler drin habe, bzw nicht der volle Text angezeigt wurde, dort sollte stehen:
"Insgesamt 3 Kurvendaten (TraceX data, X=1,2,3), ist ein Trace aus (TraceXOn = false) besteht das entsprechende TraceX data Array aus Nullen.
|
|
|
18.05.2009, 21:01
Beitrag #2
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
Plotlegende ausgeblendeter Kurven (Plots) entfernen?
Ein Multiplot-Graph (egal ob Waveform oder XY) besteht eigentlich immer aus einem (vereinfacht) "Array of Plots".
So, wenn du jetzt dein Array so zusammenbaust, dass immer die Reihenfolge "Trace 1, Trace 2, Trace 3" vorliegt, dann wird das auch immer so in der Plotlegende sein, selbst denn der Plot "Trace 2" keine Daten enthält. Das ist so, da kommst du nicht dran vorbei.
Einzige Lösung aus meiner Sicht: Wenn nur "Trace 1" und "Trace 3" Daten enthalten, dann darf dein "Array of Plots" auch nur diese Plots enthalten.
Gruß, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
19.05.2009, 08:19
(Dieser Beitrag wurde zuletzt bearbeitet: 19.05.2009 08:22 von Lucki.)
Beitrag #3
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
Plotlegende ausgeblendeter Kurven (Plots) entfernen?
' schrieb:Einzige Lösung aus meiner Sicht: Wenn nur "Trace 1" und "Trace 3" Daten enthalten, dann darf dein "Array of Plots" auch nur diese Plots enthalten.
@LabVIEWDompteur
Wobei man aber auch den Nachteil dieser Sache nicht verschweigen sollte: Es änderen sich dann die Plotfarben, und das ist viel schwerwiegender als wenn die nicht mehr sichtbare Kurve noch in der Plotlegende steht. Also: Wenn man drei Plots "Weg" (weiß) , ""Kraft" (rot) , Druck (grün) hat, und nimmt die Kurve "Kraft" aus dem Array heraus, dann ist "Druck" jetzt der zweite Plot, und aus dem grünen Druckverlauf wird ein roter Druckverlauf. Und das ist alles andere als Anwenderfreundlich. Man kann die Sache mit den Farben natürlich ändern, indem man über Eigenschaftknoten die Farben anpasst - ist aber unmständlich.
Habe das Ausblenden der Plots gerade jetzt in einer Anwendung so gelöst, und bilde mir richtig was ein auf diese mir elegant erscheinende Lösung:
(Bei den Häkchen handelt es sich um einen Cluster mit transparentem Hintergrund, den ich über die Plotlegende gelegt habe)
Eine weiter Lösungsmöglichkeit wäre, die Plotlegende auszublenden und durch eine handgemachte Plotlegende zu ersetzen. Also z.B alle Plotnamen mit Schriftfarbe= Plotfarbe. Dabei gehen aber die Plotattribute (z.B Strichstärke, gepunktet Linie) in der "Legende" verloren.
Tip: Das VI ist einmal mehr ein Musterbeilspiel für die überflüssige Verwendung von Sequenzstrukturen. Ein Eigenschaftknoten wird sequentiell von oben nach unten abgearbeitet. Es hätte statt dieser vielen Rahmen mit Eigenschafsknoten - jeder davon in einem eigenen Sequenzrahmen - ein einziger großer Eigenschaftsknoten ohne Rahmen genügt, z.B so ähnlich wie hier:
|
|
|
19.05.2009, 21:13
Beitrag #4
|
LabVIEWDompteur
LVF-Grünschnabel
Beiträge: 20
Registriert seit: May 2009
2010 SP1
-
DE
81377
Deutschland
|
Plotlegende ausgeblendeter Kurven (Plots) entfernen?
Hab jetzt der Einfachkeit halber eine Unterscheidung mit eingebaut welche beurteilt ob der Trace genutzt wird und ändere so nur die Legendenbeschriftung, sofern ein Trace nicht genutzt wird. Heisst alle Tracelegenden werden angezeigt aber ausgeblendete mit Beschriftung OFF.
@Lucki: Danke für den Hinweis bzgl. der Sequenz, die Vermeidung derer macht das Ganze nebenbei auch viel einfacher zu handhaben .
|
|
|
20.05.2009, 07:15
Beitrag #5
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
Plotlegende ausgeblendeter Kurven (Plots) entfernen?
' schrieb:Hab jetzt der Einfachkeit halber eine Unterscheidung mit eingebaut welche beurteilt ob der Trace genutzt wird und ändere so nur die Legendenbeschriftung, sofern ein Trace nicht genutzt wird. Heisst alle Tracelegenden werden angezeigt aber ausgeblendete mit Beschriftung OFF.
Also wenn Du mich fragst: An dem leeren schwarzen Feld in der Plotlegende ist doch ein augeblendeter Plot deutlich genug als ausgeblendet markiert. Wenn Du zusätzlich noch den Plotnamen unterdrückst, ist das nicht nur überflüssig, sondern es trägt eher zur Desinformation als zur Information bei, da man dann nicht mehr sieht, welcher Plot ausgeblendet ist.
|
|
|
08.07.2009, 11:57
Beitrag #6
|
abcd
LVF-Neueinsteiger
Beiträge: 3
Registriert seit: Jun 2009
8.5
-
de
83...
Deutschland
|
Plotlegende ausgeblendeter Kurven (Plots) entfernen?
@Lucki
ich hab genau dass Problem, dass sich die Farbe immer ändert beim Ausblenden, was ziemlich ungünstig ist. Könntest du mir vielleicht mal kurz erklären wie du das gemacht hast, dass die Farbe gleich bleibt.
Hab nur sehr wenig LV Erfahrung, wär dir daher sehr dankbar, wenn man mir bei der Lösung behilflich ist.
lg
|
|
|
08.07.2009, 12:41
Beitrag #7
|
|
|
09.07.2009, 09:38
Beitrag #8
|
abcd
LVF-Neueinsteiger
Beiträge: 3
Registriert seit: Jun 2009
8.5
-
de
83...
Deutschland
|
Plotlegende ausgeblendeter Kurven (Plots) entfernen?
Hallo Lucki
dankeschön kann bloß leider da VI nicht öffnen. Aber das Bild hilft mir schon mal etwas weiter.
lg
|
|
|
09.07.2009, 10:14
Beitrag #9
|
Lucki
Tech.Exp.2.Klasse
Beiträge: 7.699
Registriert seit: Mar 2006
LV 2016-18 prof.
1995
DE
01108
Deutschland
|
Plotlegende ausgeblendeter Kurven (Plots) entfernen?
' schrieb:kann bloß leider da VI nicht öffnen. Aber das Bild hilft mir schon mal etwas weiter.
Kein Problem..
Plots_deaktivieren.vi (Größe: 23,75 KB / Downloads: 338)
.
|
|
|
10.02.2010, 14:13
|
Goldmarie
LVF-Grünschnabel
Beiträge: 11
Registriert seit: Dec 2009
8.6
-
de
22047
Deutschland
|
Plotlegende ausgeblendeter Kurven (Plots) entfernen?
Hey Lucki,
Wie initialisiert man denn die Kanäle, damit der Graph weiß, welche Daten er plotten soll?
Also ich meine, wo ist die Verbindung zu den Signalen, wo und wie gibt man diese ein?
Das ist genau das, was ich gerne verwenden würde für meine 19 Sensoren, die ich miteinander vergleichen will. Aber nun weiß ich nicht, wie ich die Verbindung herstellen kann.
Kannst du es mir kurz erklären?
|
|
|
| |