Log axis on plots of different types

I am trying to create a plot whereby I have 4 curves made up of a number of points connected by a spline. I have managed to create the the plot normally but want to change the y-axis scale to be logarithmic.
I have tried using scatter, hold on, semilogy etc... and also axes('yscale','log') but the first attempt just generates standard plots whereas the second one creates one large plot in the figure (I am trying to use subplots).
Any ideas?
Many thanks in advance
Jack

Antworten (2)

Mischa Kim
Mischa Kim am 6 Feb. 2014
Bearbeitet: Mischa Kim am 6 Feb. 2014

0 Stimmen

As an example of using subplots (I believe that's what you are asking for):
x = linspace(1,10,200);
y = x.^2;
figure
subplot(2,1,1)
semilogy(x,y)
subplot(2,1,2)
loglog(x,y)
Richard
Richard am 6 Feb. 2014

0 Stimmen

If you already have a set of axes with a plot in them then you need to explicitly set the y-axis on the existing axes handle:
hAxes = gca; % Or use the axes handle if you have it
set(hAxes , 'YScale', 'log');

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Hilfe-Center und File Exchange

Tags

Gefragt:

am 6 Feb. 2014

Beantwortet:

am 6 Feb. 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by