Gemeinsame colorbar für scatter plots in Matlab mit den kleinen zahlen
Will ich haben jede Nebenhandlung teilen die gleichen colorbar Skala. Ich weiß caxis
funktioniert für ganze zahlen größer als 1, aber es scheint ein problem mit caxis
mit Werten wie 0,001 mm.
x = 0:1:10;
y = 0:1:10;
z1 = .1:-.01:0;
z2 = .01:-.001:0;
figure;
subplot(1,2,1);
scatter(x,y,10,z1); colorbar;
subplot(1,2,2);
scatter(x,y,10,z2); colorbar;
Möchte ich nun die scatter Nebenhandlungen, eine gemeinsame colorbar Skala. Ich habe versucht, zu verwenden caxis
jedoch bekomme ich nicht die gewünschten Ergebnisse. Der linken Achse nicht korrekt skaliert, wie Sie sind alle Braun. Wie kann dieser behoben werden?
ca = [0 .01];
figure;
subplot(1,2,1);
scatter(x,y,10,z1); caxis(ca); colorbar;
subplot(1,2,2);
scatter(x,y,10,z2); caxis(ca); colorbar;
InformationsquelleAutor Elpezmuerto | 2011-05-09
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Was Sie sehen, ist die richtige Verhalten von
caxis
. Wenn Siecaxis([0 0.01])
alle Werte, die größer als0.01
sind zugeordnet die Farbe rot (oder Braun, was auch immer Sie es nennen). Inz1
alle außer dem letzten Punkt sind größer als0.01
und so sind Sie alle rot markiert. Wenn Sie versuchtcaxis([0 0.1])
Sie werden sehen, dass der plot auf der rechten Seite ist ganz blau.Der dynamische Bereich der beiden Nebenhandlungen sind um eine Größenordnung auseinander und so, werden Sie nicht in der Lage zu repräsentieren, sowohl angemessen mit der gleichen caxis Grenzen.Haben Sie versucht, mit einer logarithmischen Farbskala? Versuchen Sie Folgendes:
Macht die obige Darstellung besser Aussehen?
1e-4
usw.InformationsquelleAutor abcd