plot 3D < Matlab < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 17:49 Di 06.10.2015 | Autor: | calabi |
Hallo zusammen,
ich habe eine Matrix, die in matlab.mat gespeichert ist (siehe Anhang).
Diese Matrix möchte ich in einem Skript aufrufen und als 3D Schaubild darstellen. Dabei sollen die Achsen, wie folgt definiert sein:
x-Achse [mm] \to [/mm] erste Zeile der Matrix
y-Achse [mm] \to [/mm] Anzahl der Zeilen in der Matrix multipliziert mit 0,0036
z-Achse [mm] \to [/mm] Werte in den Zellen ab der zweiten Zeile der Matrix
Könnte Ihr mir bitte sagen wie ich das programmieren kann?
Folgendes habe ich bereits geschrieben:
load matrix.mat
figure (1)
Danke!
Gruß calabi
Datei-Anhang
Dateianhänge: Anhang Nr. 1 (Typ: mat) [nicht öffentlich]
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 15:15 Do 08.10.2015 | Autor: | QCO |
Hallo calabi,
nach deiner Beschreibung hätten alle Punkte den gleichen y-Wert (nämlich 0.0036*size(Matrix,1)).
Das scheint mir nicht sinnvoll - da würde ja ein 2D-Plot reichen.
Hier jedenfalls eine Lösung dafür
[zeilen, spalten] = size(Matrix);
punkte=(zeilen-1)*spalten;%Gesamtzahl der Punkte
x=zeros(punkte,1);%Vektoren für Punkte vorbereiten
y=ones(punkte,1)*0.0036*(zeilen);
z=x;
k=1;%Zähler für Datenpunkte
for i=1:spalten
for j=2:zeilen
x(k)=Matrix(1,i);
z(k)=Matrix(j,i);
k=k+1;
end
end
plot3(x,y,z);
Da gibt es ganz sicher elegantere Lösungen, aber ich denke die ist am besten nachvollziehbar.
|
|
|
|
|
Status: |
(Frage) überfällig | Datum: | 08:01 Mo 12.10.2015 | Autor: | calabi |
Hallo QCO,
du hast natürlich recht, dass dafür ein 2D-Plot ausreichen würde! Ich habe es falsch geschrieben. Sorry!
Für die y-Werte (ist die Zeitachse) soll ab der zweiten Zeile gelten: Zeile * 0,0036
d.h. die ersten 4 y-Werte müssten lauten, wenn bei 0 angefangen wird zu zählen:
1*0,0036 = 0,0036
2*0,0036 = 0,0072
3*0,0036 = 0,0108
4*0,0036= 0,0144
Kannst du mir bitte hierfür helfen?
Gruss
calabi
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 08:20 Mi 14.10.2015 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|