wobei die Spalten der x, y und z-Koordinate entsprechen. Eine Zeile ist immer ein Punkt, z.B. (x=0|y=-1|z=10) in der dritten Zeile. Die Reihenfolge der Zeilen ist dabei nicht geordnet, könnte also auch anders sein.
Nun möchte ich das ganze gerne weiterverarbeiten und z.B. in mesh, surf, etc. benutzen. Brauch also eine Matrix mit den z-Werten sowie einen x- und y-Vektor. Aus dem Beispiel soll dann werden:
Natürlich kann ich da selbst mit etwas Aufwand, Schleifen, Bedingungen, Min, usw. ein Programm zu schreiben. Ich wollte vorher allerdings fragen ob es da irgendwelche schlauen Befehle gibt bzw. sonstigen Input, wie man das etwas eleganter machen könnte, weil mir meine Ideen dazu sehr klotzig vorkommen. Entsprechend freue ich mich über jede Anmerkung!
Z = zeros(length(x), length(y));
for ix = 1:length(x)
xm = (A(:,1) == x(ix));
for iy = 1:length(y)
index = (xm & A(:,2) == y(iy));
n = sum(index);
if n == 1
Z(ix, iy) = A(index, 3);
elseif n > 1 error('more than one element with same coordinates found!');
end end
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.