WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Verzerrungen bei Surf-Dartstellung

 

Speckdrum
Forum-Anfänger

Forum-Anfänger


Beiträge: 19
Anmeldedatum: 01.10.10
Wohnort: München
Version: ---
     Beitrag Verfasst am: 18.10.2010, 22:32     Titel: Verzerrungen bei Surf-Dartstellung
  Antworten mit Zitat      
Hallo,

bei der Darstellung einer 3D Eigenform bekomme ich immer Verzerrungen. Verschiedene griddata methoden hab ich schon probiert, leider ohne Erfolg.
Kennt jemand die Ursache und/oder die Lösung dieses Problems Question




Merci





Code:

[Eigenform{6,jj},Eigenform{7,jj}] = meshgrid(linspace(min(Eigenform{4,jj}(:,1)),max(Eigenform{4,jj}(:,1)),100),linspace(min(Eigenform{4,jj}(:,2)),max(Eigenform{4,jj}(:,2)),100));

% Interpolation der Daten
Eigenform{8,jj}=griddata(Eigenform{4,jj}(:,1),Eigenform{4,jj}(:,2),Eigenform{4,jj}(:,3),Eigenform{6,jj},Eigenform{7,jj},'linear');

% Grafik
mesh(Eigenform{6,jj},Eigenform{7,jj},Eigenform{8,jj} );
 
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 19.10.2010, 00:12     Titel: Re: Verzerrungen bei Surf-Dartstellung
  Antworten mit Zitat      
Hallo Speckdrum,

kannst Du bitte noch beschreiben, wo der Unterschied zwischen dem Bild und Deinen Erwartungen ist? "Ich bekomme Verzerrungen" ist noch nicht klar genug.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Speckdrum
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 19
Anmeldedatum: 01.10.10
Wohnort: München
Version: ---
     Beitrag Verfasst am: 19.10.2010, 12:01     Titel:
  Antworten mit Zitat      
Klar, kein Problem Very Happy
Die kleinen Peaks im Tal der Form stören mich. Ich verstehe nicht, woher er diese nimmt, da sich in den Peaks keine Datenpunkte befinden. Wenn ich andere Methoden für griddata nehme, bekomme ich auch allerhand Verzerrungen.
Gibt es eine Möglichkeit meine Z-Matrix zu harmonisieren mit einem Moving Average oder Ähnlichem? Das wäre wahrscheinlich die Lösung, da ich immer Messergebnisse habe, die ausschlagen.

Anbei ein paar Beispiele meiner Probleme.


Methode 'nearest' Unschön, aber ohne Ausreißer




Methode 'v4' Eigentlich ok, aber mit mega Ausreißer


Methode 'cubic' Da ich nicht an allen Stellen Messwerte habe, kommt die Wulst ....


Methode 'v4' Eigentlich nice, aber wieder die Interpolation ins nichts.
http://www.helix.kilu.de/2Eigenform_v4.jpg
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 19.10.2010, 12:53     Titel:
  Antworten mit Zitat      
Hallo Speckdrum,

es sind also die Peaks, die Dich im Bild im ersten Posting stören.
Die befinden sich nur am Rand, oder? Da scheint also etwas nicht korrekt zu funktionieren, Eine Idee wäre es, eine weitere Zeile (oder Spalte) am Rand einzufügen und sie vor dem Plot wieder zu entfernen.

Natürlich könnte man aber auch die numerischen Ursachen für diese Peaks suchen.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Speckdrum
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 19
Anmeldedatum: 01.10.10
Wohnort: München
Version: ---
     Beitrag Verfasst am: 19.10.2010, 13:06     Titel:
  Antworten mit Zitat      
Ich hab mir nochmal Gedanken gemacht und bin selbst auch eine Lösung gekommen.

Bei der Interpolationsmethode 'nearest' sind keine Ausreißer drin. Die daraus gewonnene Z-Matrix habe ich erst Zeilenweise, dann Spaltenweise mit dem Befehl smooth bearbeitet.

Code:
% Glätten der Fläche
dimEigenform=size(Eigenform{8,jj})
for aa=1:10
    for ii=1:dimEigenform(1);
    Eigenform{8,jj}(ii,:)=smooth(Eigenform{8,jj}(ii,:));
    Eigenform{8,jj}(:,ii)=smooth(Eigenform{8,jj}(:,ii));
   
    end
end



Aus



wird

Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.