Verfasst am: 10.12.2020, 14:23
Titel: Ausfransen an den Enden meines Surfplots
Hallo zusammen,
Ich habe das Problem, dass mein Kegel, der mit dem surf-Befehl erstellt wurde, an den unteren Kanten ausfranst (siehe Bild). Kennt da jemand eine Lösung, um das Ganze zu fixen, bzw. weiß jemand, wo das her kommt? Meine Punkte, über die ich die Oberfläche lege weisen keinen, für mich ersichtlichen, Fehler auf. Habe mir die Punkte auch im Einzelnen mit plot3 genau angeguckt...
surf(X,Y,Z,'facecolor',[0.50.50.5],'linestyle','none');
light title('EF1-0 surf');
hold on;
p0=[max(X_kegel)min(Y_kegel)0];
p1=[min(X_kegel)min(Y_kegel)0];
vectarrow(p0,p1);
hold on
p2=[max(X_kegel)max(Y_kegel)0];
p3=[min(X_kegel)max(Y_kegel)0];
vectarrow(p2,p3);
ylabel('Ausmitte in Richtung des Pfeils');
Habe mir die Punkte auch im Einzelnen mit plot3 genau angeguckt...
Welche Punkte? Die originalen oder X,Y,Z? Entstehen z.B. beim Interpolieren NaN, da genau genommen extrapoliert werden müsste?
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Die Originalen Punkte habe ich mir angeschaut, diese sind auch im, hier angehängten Bild, zu sehen.
Zitat:
Entstehen z.B. beim Interpolieren NaN, da genau genommen extrapoliert werden müsste?
Was genau ist damit gemeint? Ich nehme mal an, dass der Surf-Befehl die Punkte interpoliert? Ich weiß nicht, ob NaN entstehen, Matlab zeigt mir diesbezüglich nichts an.
Ich nehme mal an, dass der Surf-Befehl die Punkte interpoliert?
Nein, das Interpolieren übernimmt der griddata-Befehl.
Zitat:
Ich weiß nicht, ob NaN entstehen, Matlab zeigt mir diesbezüglich nichts an.
Da musst du schon aktiv schauen: die Variable Z im Workspace Browser doppelklicken und dorthin scrollen, wo du die Fransen siehst. Wenn da NaN stehen, dann fehlen Datenteile, was zu dem Ausfransen führt.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
entweder die fehlenden Werte durch sinnvolle Werte ersetzen (was "sinnvoll" heißt, musst du entscheiden) oder mit
rmmissing
Zeilen oder Spalten, die NaN enthalten, entfernen. Dann fehlt zwar eben ein kleiner Rand, aber es sieht besser aus.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
es redet doch keiner von händisch, das kann man natürlich automatisieren. Allerdings musst du eben eine Regel vorgeben, wie diese Ersetzung stattfinden soll. Es kann auch sein, dass das Problem bei anderen Interpolationsarten nicht entsteht oder nicht so gravierend ist. Das müsstest du ausprobieren.
Zitat:
Eine andere Möglichkeit gibt es nicht?
Wenn ich eine wüsste, hätte ich sie dir gesagt.
Zitat:
Kann ich vielleicht meine Inputvariablen irgendwie verändern, um den NaN zu entgehen?
Ich kenne deine Inputvariablen nicht mal, kann also schlecht was dazu sagen. Das Kernproblem dürfte die Gitterstruktur sein, für die du Datenpunkte hast, aber die lässt sich halt nicht wirklich ändern.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
gleich null gesetzt, das fälscht mein Modell zwar etwas ab, aber es sieht wesentlich besser aus.
Vielen Dank für deine Hilfe!
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
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.