Hey,
ich habe ein Problem. Und zwar habe ich eine Fläche im Raum (surf) und dazugehörige Messpunkte, die einen gewissen Abstand zu der Fläche haben. Nun würde ich gern den Abstand zwischen den Punkten und der Fläche darstellen.
Zum Beispiel, in dem ich die Punkte unterschieldich einfärbe und eine Skala bzw Legende daneben lege.
Wie ist das in Matlab umzusetzen? Die einzelnen Abstände habe ich bereits berechnet und können den Punkten auch zugeordnet werden.
Oder hat jemand noch andere Ideen, wie man so etwas darstellen könnte?
hier findest du die Chart surface properties. Die Darstellung der Punkte/Koordinaten ließe sich mit den Marker properties verändern. Aber diese settings gelten dann für alle Punkte. Wie du jeden Punkt einzeln einfärben kannst, weiß ich allerdings nicht.
Was haben aber die Punkte in den Bild mit den Punkten/Koordinaten zu tun, aus denen die Fläche mittels surf erstellt wird?
ich habe aus den Messdaten mit verschiedenen Approximation und mathematischen Verfahren diese Fläche erzeugt.
Um das Verfahren zu bewerten habe ich die Abstände der Punkte bestimmt.
Und ja, wie gesagt, den Abstand würde ich gern den einzelnen Punkten hinterlegen und diese einfärben.
Um surf zu nutzen brachst du x/y/z Koordinaten, aus denen surf dann die Fläche darstellt. Nun noch mal zu meiner Frage. Unterscheiden sich diese x/y/z Koordinaten der Fläche von den Punkten in dem Bild?
Wenn du die Darstellung der x/y/z Koordinaten ändern willst, geht das über das chart surface handle.
Die Fläche besteht aus x/y/z Werten, die über die das gesamte meshgrid in x-y erzeugt wurden.
Die Punkte bestehen auch aus x/y/z Werten. Dabei sind die x/y Werte der Punkte auch in dem meshgrid der Surf enthalten. Lediglich die z-Werte varrieren.
Der senkrechte Abstand der schwarzen Punkte zu der Surf soll dann farblich in den jeweiligen Punkten dargesstellt werden.
Zum Vorgehen: Ich habe zuerst mit dem meshgrid die Surf mit "surf(x,y,z)" erstellt und nachher die Punkte mit "plot3(x,y,z)" dazu geplotten.
Hier werden allerdings alle Punkte einer Spalte in der selben Farbe dargestellt. Wenn wirklich jeder Punkt eine seperate Farbe haben soll, müssten die Punkte wohl auch einzeln per plot3 eingefügt werden.
In dem Beispiel sind nur die einzelnen spalten in unterschieldichen Farben oder?
Wie übertrage ich das darauf, dass der gewisse Abstand meiner Punkte zu den Flächenpunkten in unterschiedlichen Fareben dargestellt wird.
Die Punkte von hline in deinem Beispiel haben also andere z-Werte als die Werte von Surf.
Bsp: großer Abstand roter Punkt, kleiner Abstand blau
In dem Beispiel sind nur die einzelnen spalten in unterschieldichen Farben oder?
Ja...hatte ich bereits geschrieben.
Zitat:
Wie übertrage ich das darauf, dass der gewisse Abstand meiner Punkte zu den Flächenpunkten in unterschiedlichen Fareben dargestellt wird.
Den wirst du selber definieren müssen. Dann wirst du wohl auch alle Punkte einzeln per plot3 einzeichnen müssen, denn sonst kann die Farbe nur spaltenweise zugewiesen werden.
Du müsstest also eine Einteilung der Distanzen machen und nun jedem Bereich eine Farbe zurordnen.
Code:
cmap = colormap(lines);
for i=1: AnzahlPunkte
% Abstand Punkt -> Fläche ermitteln
abstand = diff([Z_surf(i) Z_punkt(i)]);
% Farbe nach Abstand zuordnen if abstand < 1 color = cmap(1,:,:);
elseif abstand >= 1 && abstand < 2 color = cmap(2,:,:);
% usw end % plot punkt plot3(axh,X(i),Y(i),Z_punkt(i),'LineStyle','none',...
'Marker','*',...
'MarkerFaceColor',color,...
'MarkerSize',10);
end
Nein, ich verwende in dem Bsp. die selben z-Koordinaten.
Sorry, so meinte ich es auch;)
Vielen Dank, ich werde mal ein wenig rutüfteln. Hatte gehofft, dass es irgendetwas automatisches gibt, bei dem man das nur die Granzen des Farbverlaufs angeben muss.
Scheinbar leider nicht.
Trotzdem vielen Dank dir
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.