LabVIEWForum.de
4D-Array & Map + Regler - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenkommunikation (/Forum-Datenkommunikation)
+---- Thema: 4D-Array & Map + Regler (/Thread-4D-Array-Map-Regler)



4D-Array & Map + Regler - copa - 02.05.2016 11:19

Hallo zusammen!

ich bin noch recht neu in der LabVIEW-Welt und arbeite an einer "event driven state machine" neben meiner Masterarbeit. Ich habe ein Problem bezüglich der Messdaten-Darstellung. Zunächst mal eine kurz Schilderung des vorliegenden Falles:
Es wird eine Folge von Schritten durchlaufen, die mir alle nacheinander 2D-Arrays (Wellenlänge + Counts) liefern. Diese Arrays werden an einer vom User festgelegten Position erstellt (X + Y). Was letztenendes passiert (ist auch nicht veränderbar!) ist, dass eine Position Y angefahren wird, dann für alle Positionen X das Array "Wellenlänge + Counts" aufgenommen wird, dann an die nächste Position Y gefahren wird und das gleiche passiert... Die Positionen X und Y sind in den Namen der immer einzeln abgespeicherten Arrays mitcodiert (Ende des Namens: ;X;Y) - sprich durch Zerlegen/Abtrennen des Strings erhält man leicht diese beiden Parameter und könnte sie einem Array anfügen.
Mit diesen Daten soll ich eine 4D-Map erstellen. Die soll so aussehen, dass auf der x-Achse die Position X, auf der y-Achse die Position Y, als Farbskala (schwarz-weiß-Skala) die Counts und nebendran als Regler die Wellenlänge codiert ist. Man soll also den Regler (Wellenlänge) verschieben können und dabei soll die Map die zugehörigen Daten anzeigen!

Was ich mir bisher gedacht habe:
Nach jeder einzelnen Messung wollte ich die den 4D-Datenpunkt direkt in das Array eintragen.
Da ich ja die Map am Ende mit dem Regler (Wellenlänge) durchfahren möchte, sehe ich das einfach mal als ein 2D-Array an (Wellenlänge + Map).
Ich weiß jedoch nicht, ob ich das 4D-Array einfach so aufbauen kann: 2D-Array + X + Y --> Wellenlänge/Counts/X/Y oder ob es (dem einfachen Verstand nach sinnvoller) so aussehen muss: Wellenlänge/X/Y/Counts.

Nun die beiden definierten Fragen:
Wie muss das 4D-Array am Ende aussehen und wie kann ich es mit dem gegebenen Datenerfassungsverfahren erstellen?
Wie kann ich diese regelbare Map realisieren?

Ich bin für jede Hilfe sehr dankbar!!!

Ich verwende LabVIEW 2015 und bin noch ein ziemlicher Noob Big Grin


RE: 4D-Array & Map + Regler - copa - 03.05.2016 15:08

Hallo nochmal!

Hoffentlich habe ich schon jemanden zum Brüten anregen können und ihr schüttelt nicht nur alle den Kopf über meinen Plan Big Grin
Ich habe gerade in einem anderen Beitrag gelesen, dass man wohl auch 3D-Arrays bereits vermeiden sollte - begründet mit dem Speicher, der schnell volllaufen würde. Da ich das nur sehr schlecht abschätzen kann, hier noch eine Abschätzung der Größe des geplanten 4D-Arrays:
Das Spektrum liefert etwa 1000*2 Werte (1000 Wellenlängen mit dazugehörigen Counts).
X und Y Positionen wird es maximal je 100 geben.
Damit landet man folglich bei 100²*2000 = 20.000.000 Werten als Höchstabschätzung. Ich weiß jetzt nicht, ob das exorbitant (zu) viel ist...

Ich bitte um Ideen :/


RE: 4D-Array & Map + Regler - BNT - 03.05.2016 22:04

Ich würde es mal mit einem 2D-Array versuchen, das folgenden Cluster enthält: {x,y,{[Wellenlänge],[Counts]}. Cluster:{} und []:Array.
Dabei nehme ich an, dass sowohl Positionen und Wellenlängen nicht äquidistant sein müssen, sonst kannst Du x,y und Wellenlänge weglassen: {[Counts]}

Gruß Holger


RE: 4D-Array & Map + Regler - copa - 04.05.2016 10:34

Vielen Dank erstmal für Deine Antwort!

Mit Clustern habe ich noch gar nicht gearbeitet, daher verstehe ich Deine Notation hier auch leider nicht - könntest Du das etwas detaillierter umschreiben? Confused
Die Positionen sind (im Normalfall) äquidistant.

Grüße


RE: 4D-Array & Map + Regler - BNT - 04.05.2016 13:21

Hier ein Beispiel mnit der Annahme x und y äquidistant und nicht äquidistante Wellenlängen.

Gruß Holger