| 
	
		
			| 
					04.03.2016, 14:43  
				  Beitrag #1 |  
			| 
					
                                                 | Mistertwister
   LVF-Neueinsteiger
 
 
 Beiträge: 6
 Registriert seit: Mar 2016
 
 2015
 -
 DE
 
 
 
 
 | 2D Array an for Schleife 
					Hallo, 
ich bin neu hier im Forum und bin dabei, mich mit den Basics in Labview vertraut zu machen. Nun habe ich aber Verständnisprobleme und hoffe ihr könnt mir dabei helfen. 
Ich habe einen 2D Array (n Zeilen und m Spalten) der auf eine for Schleife geht mit Auto-Indexierung. Wenn ich mir nun den Array vor und nach der Indexierung anschaue, macht er mir einen 1D Array mit 1 Spalte und n Zeilen. Warum ist das so, müsste er nicht 1 Zeile und m Spalten ausgeben?   
Ist es generell so, dass er je nach Größe der Zeilen, Spalten auswählt was als Indexierung genommen wird?
				
				
				 |  |  
			|  |  
	
		
			| 
					04.03.2016, 14:58  (Dieser Beitrag wurde zuletzt bearbeitet: 04.03.2016 15:01  von GerdW.) Beitrag #2 |  
			| 
					
                                                 |   GerdW
   ______________
 
   
 Beiträge: 17.529
 Registriert seit: May 2009
 
 LV2019 (LV2021)
 1995
 DE_EN
 
 10×××
 Deutschland
 
 | RE: 2D Array an for Schleife 
					Hallo Twister, 
das schöne an LabVIEW ist: es ist egal, ob ein 1D-Array nun Spalten oder Zeilen hat! Es hat ja nur eine Dimension und stellt einen "Vektor" dar…
 
Wenn dich aber die Darstellung auf dem Frontpanel irritiert: einfach die Darstellung auf n Spalten, 1 Zeile ändern!
 
Demo:
   
(2 Anzeigeelemente für 1D-Arrays, die die selben  Daten anzeigen…)
				
 
				
				 |  |  
			|  |  
	
		
			| 
					04.03.2016, 15:16  
				  Beitrag #3 |  
			|  |  
			|  |  
	
		
			| 
					04.03.2016, 15:28  (Dieser Beitrag wurde zuletzt bearbeitet: 04.03.2016 15:44  von GerdW.) Beitrag #4 |  
			| 
					
                                                 |   GerdW
   ______________
 
   
 Beiträge: 17.529
 Registriert seit: May 2009
 
 LV2019 (LV2021)
 1995
 DE_EN
 
 10×××
 Deutschland
 
 | RE: 2D Array an for Schleife 
					Hallo Twister, Zitat:Nur wie darf ich dann die zwei Beispiele sehen, die ich angefügt habe. Es macht doch schon einen Unterschied, wenn der Array jetzt Messwerte hat, ob ich die Zeilen oder die Spalten wähle. 
Wo wählst du denn Spalten oder Zeilen? Nirgends!
 
Im linken Beispiel wird ein 1D-Array indiziert, es wird also Element für Element autoindiziert. (Tipp: bei 1D-Arrays NIE in Spalten/Zeilen denken, sondern einfach in "Elementen"!) 
Im zweiten Beispiel wird ein 2D-Array indiziert. Hier wählt LabVIEW automatisch die Zeilen, da 2D-Arrays immer nach dem Schema "Zeilenindex, Spaltenindex" indiziert werden. 
Im nicht vorhandenen dritten Beispiel mit einem 3D-Array würde LabVIEW "pages" indizieren, da ein 3D-Array aus den Koordinaten [Page, Row, Column] besteht…
				
 
				
				 |  
    |  
			|  |  
	
		
			| 
					04.03.2016, 15:40  
				  Beitrag #5 |  
			|  |  
			|  |  
	
		
			| 
					04.03.2016, 15:47  
				  Beitrag #6 |  
			| 
					
                                                 | Mistertwister
   LVF-Neueinsteiger
 
 
 Beiträge: 6
 Registriert seit: Mar 2016
 
 2015
 -
 DE
 
 
 
 
 | RE: 2D Array an for Schleife 
					So verstehe ich es. Ich glaube das Problem bei mir ist, dass wenn ich das Sondenfenster offen habe, er mir den Array als 1 Spalte mit n Zeilen anzeigt, was wohl nicht bedeutet, dass die Werte auch so im Speicher abgelegt sind.
				 
				
				 |  |  
			|  |  
	
		
			| 
					04.03.2016, 15:54  
				  Beitrag #7 |  
			| 
					
                                                 |   jg
   CLA & CLED
 
   
 Beiträge: 15.864
 Registriert seit: Jun 2005
 
 20xx / 8.x
 1999
 EN
 
 Franken...
 Deutschland
 
 | RE: 2D Array an for Schleife 
					 (04.03.2016 15:47 )Mistertwister schrieb:  So verstehe ich es. Ich glaube das Problem bei mir ist, dass wenn ich das Sondenfenster offen habe, er mir den Array als 1 Spalte mit n Zeilen anzeigt, was wohl nicht bedeutet, dass die Werte auch so im Speicher abgelegt sind. 
Nochmal zur Klarstellung (Gerd hat es zwar schon geschrieben, aber du willst es noch nicht verstehen): ein 1D-Array hat im genaueren Sinn keine Zeilen oder Spalten. Es hat nur 1 Dimension! Du kannst im FP die Richtung der Anzeige auswählen (bei der Sonde wird senkrecht gewählt), das hat aber nicht mit Zeile/Spalte oder der Belegungsreihenfolge im Speicher zu tun.
 
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 . 
				
				 |  
    |  
			|  |  
	
		
			| 
					04.03.2016, 15:55  
				  Beitrag #8 |  
			| 
					
                                                 |   GerdW
   ______________
 
   
 Beiträge: 17.529
 Registriert seit: May 2009
 
 LV2019 (LV2021)
 1995
 DE_EN
 
 10×××
 Deutschland
 
 | RE: 2D Array an for Schleife 
					Hallo Twister, Zitat:wenn ich das Sondenfenster offen habe, er mir den Array als 1 Spalte mit n Zeilen anzeigt, was wohl nicht bedeutet, dass die Werte auch so im Speicher abgelegt sind. 
Nochmal: wo ist der Unterschied, wenn x Werte in einem 1D-Array (=Vektor) in einer Spalte oder Zeile dargestellt werden? Es gibt keinen, abgesehen von der Optik! 
Die einzelnen Elemente liegen im Speicher genau gleich  hintereinander, unabhängig von der Optik auf dem Frontpanel (oder im Sondenfenster)!
				
 
				
				 |  |  
			|  |  
	
		
			| 
					05.03.2016, 08:58  (Dieser Beitrag wurde zuletzt bearbeitet: 05.03.2016 09:15  von Lucki.) Beitrag #9 |  
			| 
					
                                                 |   Lucki
   Tech.Exp.2.Klasse
 
   
 Beiträge: 7.699
 Registriert seit: Mar 2006
 
 LV 2016-18 prof.
 1995
 DE
 
 01108
 Deutschland
 
 | RE: 2D Array an for Schleife 
					Daß eine For-Schleife mit Autoindexierung bei einem 2D-Array die Zeilen indexiert und nicht die Spalten, merke ich mir so: Wenn man mit einer verschachtelte For-Struktur, also dieser:   
alle Einzelelemente  liest, dann geschieht das in der Reihenfolge, als ob man ein Buch liest. Also Zeile für Zeile. Damit ist klar, dass die erste, äußere Schleife  die Zeilen indexiert. Und das tut sie natürlich auch ohne die innere Schleife.
 
In Labview gibt es bei Arrays zwar keine Unterscheidung von Zeilen- und Spaltenvektoren. Wohl aber gibt es die bei Matrizen.  Konvertiert man eine Zeilen- oder Spaltenmattrix in ein Array, so ist das Resultat ein 2D-Array mit nur einer Zeile bzw. nur einer Spalte. Ein 2D-Array mit fehlender Ausdehnung in einer Dimension ist eigentlich kein echtes 2D-Array; man könnte das durchaus auch als Zeilen- oder Spaltenvektor bezeichnen bzw. so verwenden. 
Ist aber nicht nötig. Denn wer Zeilen und Spalten unterscheiden muß, der wird Matrixen verwenden.
				
				
				 |  
    |  
			|  |  |  |