Semilogy with two functions - how to make it work?

12 次查看(过去 30 天)
I have two functions, y1 and y2, both of which are quadratic functions. I'm trying to graph them on the same plot, with the y-axis being on a logarithmic scale instead of a linear scale. I know how to get just one of the functions to have a log scale on the y axis, but whenever I have two functions involved, the y-axis reverts to a linear scale. I have the code I've been using below; how might I format the semilogy so that the plot will have both functions graphed while still having the y-axis as a logarithmic scale? Any help would be appreciated.
Code:
x1=0:0.1:50;
x2=0:0.1:50;
y1=15*(x1.^2);
y2=80*(x2.^2);
semilogy(y1,y2)
plot(x1,y1,'-','LineWidth',3,'Color','k')
hold on
plot(x2,y2,'-','LineWidth',3,'Color','k')

回答(2 个)

the cyclist
the cyclist 2013-9-16
x1=0:0.1:50;
x2=0:0.1:50;
y1=15*(x1.^2);
y2=80*(x2.^2);
figure
hold on
semilogy(x1,y1,'-','LineWidth',3,'Color','k')
semilogy(x2,y2,'-','LineWidth',3,'Color','k')
  1 个评论
Connor Williams
Connor Williams 2019-9-25
This is incorrect. If you initiate the figure with figure and hold on commands before the semilogy command, the figure remains with linear axes.

请先登录,再进行评论。


Chris
Chris 2013-9-16
I think that'll work for now, thank you.
  1 个评论
the cyclist
the cyclist 2013-9-16
Just for your future reference, your remark would have been better placed as a "comment" on my answer (rather than as a new "answer"). You might also consider accepting my answer if it was helpful to you, which may be useful for future users looking for something similar.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Graphics Objects 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by