Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Bücher:

MATLAB kompakt

Fachkräfte:
weitere Angebote

Partner:


Vermarktungspartner


Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

surfaceplot hat verschiedene Ergebnisse

 

mathfreak
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 11.05.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.05.2020, 19:27     Titel: surfaceplot hat verschiedene Ergebnisse
  Antworten mit Zitat      
Ich möchte gerne die Werte aus einer Matrix T, in der Funktionswerte gespeichert sind als zweidimensionale Fläche plotten.

Dazu verwende ich den Befehl

Code:

X=linspace(0,180,150);
Y=linspace(0,360,150);
surf(X,Y,T)
 


Je nachdem auf welchem Computer ich das Skript ausführe erhalte ich unterschiedliche plots, einen eher kantigen und einen runderen, die sich auch durch die Position ihres Tiefpunkts unterscheiden, an was kann das liegen.

Im Anhang die beiden plots

unterschied.JPG
 Beschreibung:

Download
 Dateiname:  unterschied.JPG
 Dateigröße:  86.79 KB
 Heruntergeladen:  37 mal
Private Nachricht senden Benutzer-Profile anzeigen


andreas.apostolatos
Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 06.05.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.05.2020, 10:41     Titel:
  Antworten mit Zitat      
Hallo,

ich habe es mit,

Code:
X = linspace(0, 180, 150);
Y = linspace(0, 360, 150);
T = sin(X/5/2/pi)'.*cos(Y/5/2/pi);


in MATLAB R2020a unter Linux Ubuntu ausprobiert und der resultierende Plot sieht ziemlich glatt aus, wie erwartet (siehe im Anhang).

Könntest du vielleicht die Betriebssysteme und die MATLAB Versionen, die du nutzt, nennen als auch deine Matrix T mitteilen?

Schöne Grüße,
Andreas

sinusflaeche.png
 Beschreibung:

Download
 Dateiname:  sinusflaeche.png
 Dateigröße:  39.21 KB
 Heruntergeladen:  38 mal

_________________

Dr.-Ing. Andreas Apostolatos
Private Nachricht senden Benutzer-Profile anzeigen
 
mathfreak
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 11.05.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.05.2020, 19:08     Titel:
  Antworten mit Zitat      
Hallo Andreas,

vielen Dank für deine Antwort, die Matrix hänge ich an.
Ja, bei dir sieht der plot sehr schön rund aus.
Ich habe gestern herausgefunden, dass bei mir es nicht nur von Computer abhängt wie die Fläche aussieht sondern auch in welchem Ordner ich sie ausführe. Ich habe Windows 10 und Matlab 2019a.

Das vollständige Skript mit einlesen lautet:

Code:

Pfad=uigetfile;
T_mit_NaN = readmatrix(Pfad);
T=T_mit_NaN(1:150,1:150);

X=linspace(0,360,150);
Y=linspace(0,180,150);

surf_fig=figure;
surf(X,Y,T);

 


T.txt
 Beschreibung:

Download
 Dateiname:  T.txt
 Dateigröße:  393.17 KB
 Heruntergeladen:  36 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 21.991
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 13.05.2020, 19:31     Titel:
  Antworten mit Zitat      
Hallo,

ich empfehle dringend folgende Änderung:

Code:
[Datei,Pfad]=uigetfile;
T_mit_NaN = readmatrix(fullfile(Pfad, Datei));


Andernfalls ist es möglich, dass eine Datei aus einem anderen Verzeichnis als beabsichtigt eingelesen wird, wenn der Anwender beim Auswählen der Datei das Verzeichnis ändert.

Löst dies das Problem?

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 ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
mathfreak
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 11.05.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.05.2020, 19:47     Titel:
  Antworten mit Zitat      
nein, an der Einleseart etwas zu verbessern hat das Problem leider nicht gelöst
danke trotzdem für den Tipp
Private Nachricht senden Benutzer-Profile anzeigen
 
andreas.apostolatos
Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 06.05.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.05.2020, 20:13     Titel:
  Antworten mit Zitat      
Hallo,

ich habe deinen Code auch auf Windows mit MATLAB R2020a ausprobiert und das Ergebnis ist wieder wie erwartet (sehe im Anhang).

Auf dem ersten Bild, das du gepostet hast, scheint so, dass beide Oberfläche die gleiche Auflösung besitzen. Aus diesem Grund denke ich, dass die Matrix T in beiden Fällen nicht die gleiche ist. Ich bin auch eher in der Seite, dass verschiedene Dateie in beiden Fällen eingelesen werden.

Also, du könntest vielleicht das Skript im gleichen Pfad mit der T.txt Datei speichern und es neu durch den Befehl laufen lassen,

Code:
T_mit_NaN = readmatrix('T.txt');


So wird sichergestellt, dass die richtige Datei eingelesen wird.

Viel Erfolg und Schöne Grüße,
Andreas

surf_flaeche.png
 Beschreibung:

Download
 Dateiname:  surf_flaeche.png
 Dateigröße:  94.67 KB
 Heruntergeladen:  31 mal

_________________

Dr.-Ing. Andreas Apostolatos
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
.


goMatlab ist ein Teil des goForen-Labels
goForen.de goMATLAB.de goLaTeX.de


 Impressum  | Nutzungsbedingungen  | Datenschutz  | Werbung/Mediadaten | Studentenversion | FAQ | goMatlab RSS Button RSS


Copyright © 2007 - 2020 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
Partner: LabVIEWforum.de

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.