LabVIEWForum.de
Graphen-Array mit individueller Skalierung - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Signaldarstellung (/Forum-Signaldarstellung)
+---- Thema: Graphen-Array mit individueller Skalierung (/Thread-Graphen-Array-mit-individueller-Skalierung)



Graphen-Array mit individueller Skalierung - miha - 08.02.2013 21:00

Hallo,

ich habe folgendes Problem: Ich habe ungefähr wie hier beschrieben ein Array aus Clustern mit einem Graphen drin. Das mit dem Array ist in meinem Fall ziemlich praktisch, drum würd ich das gern so lassen. Leider bin ich jetzt auf das gleiche Problem gestoßen wie der eine User in der verlinkten Seite, nämlich dass dann alle Graphen die gleiche Skalierung haben. Da sich bei mir die Skalen um Größenordnungen unterscheiden können, ist das für mich so nicht zu gebrauchen. Die Lösung, die auf der Seite beschrieben ist (User TMarzec), verstehe ich nicht leider nicht und woanders hab ich auch nichts finden können. Habt ihr eine Idee, wie man das machen kann?

Im Anhang ist ein Minimalbeispiel, in dem ein Graph die Nulllinie zeigen sollte und der andere eine Gerade mit Steigung 1. Was zu sehen ist und was flackert hängt aber ab davon, wo man zuletzt geklickt hat. Das macht natürlich für richtige Daten keinen Sinn.

Vielen Dank, falls jemand da eine Idee hat!

Schöne Grüße,

Michael


RE: Graphen-Array mit individueller Skalierung - Trinitatis - 08.02.2013 22:35

Zitat:Das mit dem Array ist in meinem Fall ziemlich praktisch, drum würd ich das gern so lassen.

Hallo Michael,

ich fürchte, das wird nicht so recht gehen. In einem Array müssen alle Elemente vom selben Typ sein. Das beinhaltet meines Wissens so ziemlich alles außer dem Wert selbst, in deinem Fall also dem Graphen.
Du kannst auch einfach nur grafische Eigenschaften oder die Skalenbeschriftung ändern und wirst sehen, dass es sich immer auf alle Elemente des Arrays bezieht.
Der Umweg, den Graph in einen Cluster zu legen und den dann im Array zu platzieren, wie im Link beschrieben, funktioniert auch nicht.

Insofern musst du wohl nochmal über den Datentyp nachdenken. Du schreibst, in deinem Fall wäre es ziemlich praktisch - du kannst ja mal posten, was du vorhast. Vielleicht fällt ja jemandem noch eine andere Variante ein.


Gruß, Marko


RE: Graphen-Array mit individueller Skalierung - miha - 09.02.2013 08:09

Hallo Marko,

danke schön für deine Antwort.

Ich hätte die Graphen gern in einem Array, weil sie an sich alle gleich angesteuert werden. Der User kann z.B. für jeden Graph auswählen, welches Messsignal angezeigt werden soll. Damit ich nicht mehrfach den gleichen Code da stehen hab, will ich das in eine Schleife setzen.

Mir ist gestern auf dem Heimweg dann ein Workaround eingefallen, den werd ich später testen. Ich werd die Graphen als separate Elemente auf der Oberfläche einfügen und Referenzen auf die Graphen in ein Array schreiben. Dann kann ich dieses Referenz-Array in Schleifen abarbeiten. So ist natürlich die Erweiterbarkeit zu mehr Graphen nicht so einfach wie ein Array einfach eins weiter aufziehen, aber grad bei Graphen setzt der Bildschirm ja eh Grenzen. Über Erfolg/Misserfolg werde ich berichten ;-)

Schöne Grüße,

Michael


RE: Graphen-Array mit individueller Skalierung - Lucki - 09.02.2013 09:00

Mit Arrays lassen sich im BD kompaktere Codes erzeugen - das ist wahr. Ebenso wahr ist aber, dass sich auf den FP mit Clustern mehr machen lässt als mit Arrays. Cluster sind allerdings von der Elementezahl her nicht während der Laufzeit skalierbar.
Da es Dir darauf aber nicht anzukommen scheitn, ist die Clusterdarstellung auf dem FP und Arraydarstellung auf dem BD für Dich hier die naheliegende Lösung des Problems.
[attachment=43473]

@Marco
Zitat:Der Umweg, den Graph in einen Cluster zu legen und den dann im Array zu platzieren, wie im Link beschrieben, funktioniert auch nicht.
Wie Du in meinem unteren Beipiel siehst, geht es doch. Allerdings steckt in der Anzeige ein kleines (transparentes Cluster-) Geheimnis, welches herauszufinden nicht schwer fallen dürfte.

Edit
Auflösung: Cluster um die Graphen sichtbar gemacht
[attachment=43474]


RE: Graphen-Array mit individueller Skalierung - miha - 09.02.2013 19:01

Vielen Dank für deine Hilfe! Ich hab noch nicht zu 100% verstanden, warum das jetzt geht, aber das find ich schon auch noch raus Smile


RE: Graphen-Array mit individueller Skalierung - Lucki - 09.02.2013 19:34

Zur Erleichterung beim Herausfinden habe ich oben das VI editiert und die verborgenen Cluster sichbar gemacht.


RE: Graphen-Array mit individueller Skalierung - Trinitatis - 09.02.2013 23:49

(09.02.2013 09:00 )Lucki schrieb:  @Marco
Zitat:Der Umweg, den Graph in einen Cluster zu legen und den dann im Array zu platzieren, wie im Link beschrieben, funktioniert auch nicht.
Wie Du in meinem unteren Beipiel siehst, geht es doch.

@Lucki
In dem von Michael beschriebenen Link heißt es:
"you can put XY Graph control to blank cluster control and than put cluster to an array. Then every element of array could be independently changed."

Das heißt in meinem Englisch: Verschiebe einen X/Y-Graph in einen leeren Cluster und verschiebe diesen in ein Array, dann kannst du jedes Element unabhängig verändern.

Und genau das funktioniert bei mir nicht.

Was du gemacht hast, ist eben kein Array auf dem FP zu verwenden - sicher ein diskutabler Weg, hat aber nichts mit den Vorgaben von Michael zu tun!
(08.02.2013 21:00 )miha schrieb:  Das mit dem Array ist in meinem Fall ziemlich praktisch, drum würd ich das gern so lassen.

Im übrigen meinte ich die von dir gezeigte Variante mit den Worten:
(08.02.2013 22:35 )Trinitatis schrieb:  Vielleicht fällt ja jemandem noch eine andere Variante ein.


Gruß, Marko


RE: Graphen-Array mit individueller Skalierung - Lucki - 10.02.2013 11:59

@Marco
Entchuldige vielmals, wenn ich dich zitiert habe und das dann so aussieht, als ob Du es auch nicht hingekriegt hast. Das wollte ich nicht, ich wollte nur eine Lösung vorschlagen. Und bei meiner Antwort mit dem kritisiertem Zitat habe ich nicht alle Links und was dazugehört bis ins letzte Detail recherchiert, um herauszufinden, woran es lag, dass es bisher nicht zu einer Lösung oder zu einem alternativem Vorschlag kam. Soll nicht wieder vorkommen.
Gruß Ludwig


RE: Graphen-Array mit individueller Skalierung - jg - 11.02.2013 09:30

(09.02.2013 23:49 )Trinitatis schrieb:  In dem von Michael beschriebenen Link heißt es:
"you can put XY Graph control to blank cluster control and than put cluster to an array. Then every element of array could be independently changed."

Das heißt in meinem Englisch: Verschiebe einen X/Y-Graph in einen leeren Cluster und verschiebe diesen in ein Array, dann kannst du jedes Element unabhängig verändern.

Und genau das funktioniert bei mir nicht.
Zur Klarstellung an alle:
Diese Aussage auf ni.com ist IMHO falsch, das hat inzwischen auch jeder hier in diesem Thread bemerkt.
Man erreicht durch diese Verschachtelung (Array of Cluster of Array...) nur, dass für die Graphen bei Verwendung einen Arrays eine unterschiedliche Anzahl von Datenpunkten haben können - vielleicht sollte auch nur das auf ni.com zum Ausdruck gebracht werden.
Die Eigenschaften aller Array-Elemente sind aber immer identisch, und dazu zählen leider auch die Skalen.

Gruß, Jens