Verfasst am: 27.11.2007, 09:50
Titel: Logarithmische Farbskala für Contour-plot
Hallo,
ich habe folgendes Problem: Ich möchte Höhenlinien mit contour darstellen. Es hat sich herausgestellt, dass eine logarithmische Skala nötig ist, damit die Linien nicht alle in einer Region zusammengedrängt sind. Also gebe ich die Funktionswerte, bei denen Linien gezeichnet werden sollen, explizit an:
So weit, so gut. Allerdings sind jetzt fast alle Höhenlinien dunkelblau, eine ist dunkelrot. Das liegt daran, dass die Farbskala noch linear und nicht logarithmisch ist.
Gibt es eine Möglichkeit, auch die Farbskala logarithmisch zu wählen? Idealerweise so, dass auch die colorbar sinnvoll aussieht? Ansonsten muss ich wohl die Farbwerte händisch zuweisen, aber das sollte wirklich ultima ratio sein.
Vielen Dank schon mal! Herzliche Grüße
Bijick
_________________
Vielen Dank, der erste war ein Volltreffer! Hier die Lösung, falls es noch mal jemand braucht:
Code:
closeall;figure;
hold on;
% Supply arrays for x, y, and z values [C,g] = contour(X,Y,Z,1:1:1000); % Create standard contour plot first colormap(jet); % Create custom colormap
h = colorbar; % Add colorbar set(h,'YScale','log'); % Change colorbar scale to log hold(h); % Hold the colorbar
z2 = log10(Z); % Take log10() of data cla; % Clear contour plot contour(X,Y,z2,0:0.5:3); % Plot log10 data, keeping the logarithmic % colorbar for the original data axis tight % Fill entire axes with contour plot
Das Beispiel hier geht nicht so gut, weil man zunächst einen normal skalierten contour-plot braucht. Also ist je nach Wertebereich nur ein Ausschnitt darstellbar. Bei meinem tatsächlichen Problem geht es glücklicherweise besser. Also danke nochmals.
Ich habe das vor einiger Zeit für ein pcolor anders gelöst: Den Plot gleich von den logarithmierten Daten machen, und dann die CTickLabels des Colorbars umschreiben. Das geht genauso wie das ersetzen der XTickLabels der X-Achse.
Gruß,
Michaela
_________________
---------------------------------------------------------------
Leider habe ich daheim zwar Internet aber kein Matlab - daher sind alle Syntaxbeispiele circa Angaben.....
freut mich, dass ich Dir auch mal helfen konnte
Bislang wars ja immer andersrum..
_________________
---------------------------------------------------------------
Leider habe ich daheim zwar Internet aber kein Matlab - daher sind alle Syntaxbeispiele circa Angaben.....
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.