| 
 | 
  
 
| koffer-murphy | 
 
  
 
Forum-Anfänger
 
 
 | 
 
  | 
Beiträge: 14
 | 
  | 
 
 | 
 
  | 
Anmeldedatum: 15.04.08
 | 
  | 
 
 | 
 
  | 
Wohnort: ---
 | 
  | 
 
 | 
 
  | 
Version: ---
 | 
  | 
 
 | 
 
 
 | 
 
  | 
 
  | 
      
Verfasst am: 21.04.2008, 20:51    
Titel: Problem mit surf / mesh
 | 
  | 
 
 
Hallo,
 
 
ich würde gerne ein Profil mit Matlab darstellen.
 
Mit dem Befehl mesh(X) erhalte ich das Ergebnis wie auf dem Bild in der Anlage beigefügt. Nun möchte ich auf die Oberfläche ein Gitter legen, damit das bisschen hübscher aussieht.
 
Eigentlich sollte das ja mit dem Befehl surf gehen. Dabei wird jedoch die gesamte Oberfläche schwarz dargestellt...
 
Was mache ich falsch? Ich habe auch schon probiert, den Befehl mesh(X,Y,Z) zu verwenden., wobei ich X und Y aus meshgrid bestimme. Leider erhalte ich hier eine Fehlermeldung:
 
[X,Y]=meshgrid(smoothv_sgolay);
 
??? Maximum variable size allowed by the program is exceeded.
 
 
Error in ==> meshgrid at 44
 
    xx = xx(ones(ny, 1), ;
 
 
Hat jemand eine Idee, wie ich nun ein Gitter auf die Oberfläche legen kann?
 
 
Vielen Dank für eure Hilfe!
	
  
	
	
		
	 
	
		|  Beschreibung: | 
		
			
		 | 
		  Download | 
	 
	
		|  Dateiname: | 
		 ob_3d.jpg | 
	 
	
		|  Dateigröße: | 
		 113.41 KB | 
	 
	
		|  Heruntergeladen: | 
		 1395 mal | 
	 
	 
 |   
 | 
 
| 
 | 
 
 
		
		 |  
		
		
		
  
		 | 
		 
		
| Bijick | 
 
  
 
Ehrenmitglied
 
  
 
 | 
 
  | 
Beiträge: 914
 | 
  | 
 
 | 
 
  | 
Anmeldedatum: 18.06.07
 | 
  | 
 
 | 
 
  | 
Wohnort: Nürnberg
 | 
  | 
 
 | 
 
  | 
Version: R2006b, R2008b
 | 
  | 
 
 | 
 
 
 | 
 
  | 
 
  | 
      
Verfasst am: 22.04.2008, 09:30    
Titel: 
 | 
  | 
 
 
Hallo koffer-murphy,
 
 
das alles spricht dafür, dass Du zu viele Werte in der darzustellenden Matrix hast. Wenn alles schwarz ist, bedeutet das, dass man vor lauter Gitterlinien die Werte nicht mehr sieht.
 
 
Versuch mal 
 
 
 
 
mit verschiedenen ganzzahligen Werten für step.
 
 
Herzliche Grüße
 
Bijick
 _________________
  >> why
 |   
 | 
 
| 
 | 
 
 
 
| koffer-murphy | 
 
Themenstarter
  
  
 
Forum-Anfänger
 
 
 | 
 
  | 
Beiträge: 14
 | 
  | 
 
 | 
 
  | 
Anmeldedatum: 15.04.08
 | 
  | 
 
 | 
 
  | 
Wohnort: ---
 | 
  | 
 
 | 
 
  | 
Version: ---
 | 
  | 
 
 | 
 
 
 | 
 
  | 
 
  | 
      
Verfasst am: 22.04.2008, 12:28    
Titel: 
 | 
  | 
 
 
Hallo,
 
 
leider klappt es mit deinem Befehl nicht:
 
 
>> surf(werte(1:100:end,1:100:end));
 
??? Error using ==> surf at 75
 
Z must be a matrix, not a scalar or vector.
 
 
Ich glaube, der Befehl step ist hier nicht richtig...
 |   
 | 
 
| 
 | 
 
 
 
| denny | 
 
  
 
Supporter
 
  
 
 | 
 
  | 
Beiträge: 3.853
 | 
  | 
 
 | 
 
  | 
Anmeldedatum: 14.02.08
 | 
  | 
 
 | 
 
  | 
Wohnort: Ulm
 | 
  | 
 
 | 
 
  | 
Version: R2012b
 | 
  | 
 
 | 
 
 
 | 
 
  | 
 
  | 
      
Verfasst am: 22.04.2008, 12:43    
Titel: 
 | 
  | 
 
 
Das Problem ist das du step zu groß gewählt hast.
 
Step bedeutet nimm nur jedes 100 Wert (wie in deinem Fall).
 
Aber deine Matrix ist wohl  kleiner als 100x100.
 
 
 
Beispiel:
 
 
erzeugt Fehler, da meine Matrix ist nur 9x9 
 
und ich möchte gleich den 10. Wert haben, das läuft schief da kein 10.Wert in Matrix existiert
 
wählt man z.B:
 
 
dann funktioniert die Code, da 10. Wert existiert in diesem Fall.
 
 
Also muss dein step immer kleiner gleich der Matrix Größe wählen
 |   
 | 
 
| 
 | 
 
 
 
| steffi | 
 
  
 
Forum-Century
 
  
 
 | 
 
  | 
Beiträge: 149
 | 
  | 
 
 | 
 
  | 
Anmeldedatum: 07.03.08
 | 
  | 
 
 | 
 
  | 
Wohnort: ---
 | 
  | 
 
 | 
 
  | 
Version: ---
 | 
  | 
 
 | 
 
 
 | 
 
  | 
 
  | 
      
Verfasst am: 22.04.2008, 12:43    
Titel: 
 | 
  | 
 
 
ich glaube, bijick meinte step hier nicht als Befehl, sondern als Variable!
 
 
Wie groß ist deine Matrix? Versuch doch mal:
 
 
 
 
Wenn das immer noch undeutlich ist:
 
 
 _________________
  Wenn ich bei der Arbeit mit Computern eins gelernt habe dann das ich einem Computer nur soweit traue wie ich ihn werfen kann.
 |   
 | 
 
| 
 | 
 
 
 
| koffer-murphy | 
 
Themenstarter
  
  
 
Forum-Anfänger
 
 
 | 
 
  | 
Beiträge: 14
 | 
  | 
 
 | 
 
  | 
Anmeldedatum: 15.04.08
 | 
  | 
 
 | 
 
  | 
Wohnort: ---
 | 
  | 
 
 | 
 
  | 
Version: ---
 | 
  | 
 
 | 
 
 
 | 
 
  | 
 
  | 
      
Verfasst am: 22.04.2008, 12:46    
Titel: 
 | 
  | 
 
 
ja, ich weiß, die matrix ist 5x80001 groß...
 
 
und ich habe für step 100 und für end 80001 gewählt.. trotzdem kommt die fehlermeldung...   
 |   
 | 
 
| 
 | 
 
 
 
| steffi | 
 
  
 
Forum-Century
 
  
 
 | 
 
  | 
Beiträge: 149
 | 
  | 
 
 | 
 
  | 
Anmeldedatum: 07.03.08
 | 
  | 
 
 | 
 
  | 
Wohnort: ---
 | 
  | 
 
 | 
 
  | 
Version: ---
 | 
  | 
 
 | 
 
 
 | 
 
  | 
 
  | 
      
Verfasst am: 22.04.2008, 13:02    
Titel: 
 | 
  | 
 
 
5x80001, dann kannst du nicht mit 
 
 
 
 
 
loslegen: 100 ist doch größer als 5!
 
 
 
versuchen!
 _________________
  Wenn ich bei der Arbeit mit Computern eins gelernt habe dann das ich einem Computer nur soweit traue wie ich ihn werfen kann.
 |   
 | 
 
| 
 | 
 
 
 
| denny | 
 
  
 
Supporter
 
  
 
 | 
 
  | 
Beiträge: 3.853
 | 
  | 
 
 | 
 
  | 
Anmeldedatum: 14.02.08
 | 
  | 
 
 | 
 
  | 
Wohnort: Ulm
 | 
  | 
 
 | 
 
  | 
Version: R2012b
 | 
  | 
 
 | 
 
 
 | 
 
  | 
 
  | 
      
Verfasst am: 22.04.2008, 13:15    
Titel: 
 | 
  | 
 
 
Ja du hast aber nur 5 Zeilen und du springst in Zeilenrichtung gleich 100 Zeilen, das wird einfach schief gehen
 
 
So sieht Syntax für Zugriff auf Matrix-Elemente 
 
X(zeilen,spalten).
 
Vor der Komma wählt man Anzahl Zeilen
 
Nach der Komma  --- Anzahl Spalten
 
z.B. X(5,100) gibt Elemnt aus 5.Zeile und 100.Spalte  
 
 
genau so ist es mit Laufindex
 
X(von:bis ,von:bis).
 
z.B. X(1:5,1:6) würde 5 Zeilen und 6Spalten Matrix ausgeben
 
 
Mit Step gibt man bloß die Schrittweite 
 
 
X(von:step_row:bis ,von:step_col:bis).
 
 
so z.B. würde es in deinem Fall funktionieren 
 
 
 
Aber ob es die Lösung ist für das Gitter ist, da bin ich mir nicht sicher
 |   
 | 
 
| 
 | 
 
 
 
| koffer-murphy | 
 
Themenstarter
  
  
 
Forum-Anfänger
 
 
 | 
 
  | 
Beiträge: 14
 | 
  | 
 
 | 
 
  | 
Anmeldedatum: 15.04.08
 | 
  | 
 
 | 
 
  | 
Wohnort: ---
 | 
  | 
 
 | 
 
  | 
Version: ---
 | 
  | 
 
 | 
 
 
 | 
 
  | 
 
  | 
      
Verfasst am: 22.04.2008, 14:55    
Titel: 
 | 
  | 
 
 
Hallo,
 
 
vielen Dank für die Hinweise... Hatte irgendwie einen Brett vorm Kopf... Klar konnte das nicht funktionieren...
 
 
Jetzt haut's hin!
 |   
 | 
 
| 
 | 
 
 
 
 
 
  
 | 
  
 | 
 
| 
Einstellungen und Berechtigungen
 | 
 
 
 | 
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen 
 | 
 
 
 
 |  
 
 
  Impressum
 | Nutzungsbedingungen
 | Datenschutz
 | FAQ
 |   RSS
  
  
  Hosted by: 
 
  
  
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks 
 
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
  
 
 | 
 
 
		 |