|
|
Achse beim plot logarithmisch einteilen bei surf |
|
AbsolutBeginner |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2008, 14:26
Titel: Achse beim plot logarithmisch einteilen bei surf
|
|
Hallo!
Entschuldigt mal die kurze Frage, die wirklich nicht schwer ist:
Ich habe mit surf eine 3D Grafik erzeugt. Die y-Achse (frequenz) habe ich mit:
set(gca, 'yscale', 'log');
logarithmisch dargestellt. Jetzt aber mein Problem:
Die Werte an der y-Achse sind 10^1, 10^2, 10^3.
Ich hätte aber lieber 10, 100, 1000 dort stehen oder sogar noch feinere Unterteilungen. Ich möchte es gerne im Skript mit set oder ähnlichem ändern, damit die Grafik beim öffnen schon perfekt ist.
Ich habs schon mit ytick und ylabel versucht, aber leider noch nicht die Lösung gefunden.
Kann mir jemand helfen und mir mal das Brett vom Kopf entfernen?
Vielen Dank!
Beste Grüße
|
|
|
|
|
nschlange |
Ehrenmitglied
|
|
Beiträge: 1.320
|
|
|
|
Anmeldedatum: 06.09.07
|
|
|
|
Wohnort: NRW
|
|
|
|
Version: R2007b
|
|
|
|
|
|
Verfasst am: 11.01.2008, 14:33
Titel:
|
|
Hi,
was Dir fehlt ist wahrscheinlich YTickLabel, oder?
Viele Grüße
nschlange
_________________
Viele Grüße
nschlange
"Chuck Norris ejakuliert fluessigen Stahl!"
|
|
|
AbsolutBeginner |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2008, 14:44
Titel:
|
|
Hab ich auch schon versucht und war auch so mit drin:
set (gca, 'Yscale', 'log')
set (gca, 'Ytick', [ymin, ymax])
set (gca, 'Yticklabel', [ymin, ymax]);
min und max sind dabei die min und max werte des Vektors. Oder wie macht man das? Ich steig da nicht ganz so durch, wie man damit eine Achseneinteilung vornimmt!
|
|
|
nschlange |
Ehrenmitglied
|
|
Beiträge: 1.320
|
|
|
|
Anmeldedatum: 06.09.07
|
|
|
|
Wohnort: NRW
|
|
|
|
Version: R2007b
|
|
|
|
|
|
Verfasst am: 11.01.2008, 15:13
Titel:
|
|
eher so:
_________________
Viele Grüße
nschlange
"Chuck Norris ejakuliert fluessigen Stahl!"
|
|
|
AbsolutBeginner |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2008, 15:40
Titel:
|
|
Das geht schon in die richtige Richtung, aber jetzt stehen immer die gleichen Zahlen nochmal neben der y-ache! Total komisch! Außerdem kann ich die 3d ansicht mit axis xy nicht mehr ausschalten!
|
|
|
AbsolutBeginner |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2008, 15:46
Titel:
|
|
Das Problem ist, dass ich ja einen 3D plot habe, den ich mit axis xy 2d anzeigen lasse, die 3te dimension wird als colorbar angezeigt.
Mit dem Befehl num2string wird der Colorbar soo breit, dass er das Bild überdeckt.
Lasse ich num2str weg, ist der colorbar wieder normal, aber das Bild ist immer 3D. Axis xy ist ohne funktion. Die axen sind dann okay, aber wie bekomme ich das jetzt 2d??
Danke
|
|
|
nschlange |
Ehrenmitglied
|
|
Beiträge: 1.320
|
|
|
|
Anmeldedatum: 06.09.07
|
|
|
|
Wohnort: NRW
|
|
|
|
Version: R2007b
|
|
|
|
|
|
Verfasst am: 11.01.2008, 15:54
Titel:
|
|
Beispiel?
Quellcode?
_________________
Viele Grüße
nschlange
"Chuck Norris ejakuliert fluessigen Stahl!"
|
|
|
AbsolutBeginner |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2008, 15:59
Titel:
|
|
|
|
AbsolutBeginner |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2008, 16:03
Titel:
|
|
Hier mal der plotquellcode:
figure;
surf(t,y,b);
if s1==1
shading interp
elseif s1==2
shading flat
elseif s1==3
shading faceted
end
if z1 == 1
zoom
else
end
if r1 ==1
rotate3d on
zlabel('Pegel [dB]')
else
end
if l1 ==1
vecy = (ymin:100:ymax);
set (gca, 'YScale', 'log');
set (gca, 'Ylim',[ymin ymax])
set(gca,'Ytick',vecy);
axis ('xy')
else
end
grid off
if xmax>300
xlabel('R');
else
xlabel('Zeit [t]');
end
ylabel('Frequenz [Hz]')
title(specFileName);
caxis ([cmin cmax]);
colormap(jet(256));
colorbar;
|
|
|
nschlange |
Ehrenmitglied
|
|
Beiträge: 1.320
|
|
|
|
Anmeldedatum: 06.09.07
|
|
|
|
Wohnort: NRW
|
|
|
|
Version: R2007b
|
|
|
|
|
|
Verfasst am: 11.01.2008, 16:12
Titel:
|
|
Ich hab jetzt leider keine Zeit mehr,
aber versuch mal
mit ', also transponieren
_________________
Viele Grüße
nschlange
"Chuck Norris ejakuliert fluessigen Stahl!"
|
|
|
AbsolutBeginner |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2008, 16:19
Titel:
|
|
Okay, danke trotzdem.
habs mal gerade getestet, geht aber nicht, weil :
Values must be monotonically increasing.
Wie gesagt, es ist sonst okay, nur noch in 2d.... weiß sonst noch jemand Rat?
Danke!
|
|
|
AbsolutBeginner |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.01.2008, 16:32
Titel:
|
|
Habs gefunden!
Es fehlte bei log als auch lin:
axis ([xmin xmax ymin ymax]);!
Jetzt ist alles wieder 2D!
Tausend Dank!
Greetz
|
|
|
Michaela |
Forum-Century
|
|
Beiträge: 239
|
|
|
|
Anmeldedatum: 12.07.07
|
|
|
|
Wohnort: ---
|
|
|
|
Version: bis 2007b
|
|
|
|
|
|
Verfasst am: 11.01.2008, 19:34
Titel:
|
|
|
|
|
|
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
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
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.
|
|