x=[0:100:500];
y=3000+x.*250;
y1=y.*400;
How to plot both (x,y) and (x,y1) on one graph with suitable y axis ranges

 采纳的回答

Maybe like this?
x = linspace(0, 100, 501);
y = 3000 + x*250;
yyaxis left
plot(x, y)
ylim([0 4e4])
yyaxis right
plot(x, 400*y)
ylim([0 14e6])

3 个评论

Thank you very much
You are welcome, @Charuka Kumarasinghe. If you find the solution is helpful, please consider accepting ✔ and voting 👍 the Answer. Thanks!

请先登录,再进行评论。

更多回答(1 个)

Ajay Ahuja
Ajay Ahuja 2022-6-22

0 个投票

Thanks Sam for the answer. However, yyaxis left & yyaxis right commands don't seem to work in Simulink block. Any suggestions? Rgds!

1 个评论

As far as I know, this left/right y-axis feature is currently not supported in the Simulink Scope.
If you really want to view two signals in one Scope, consider specifying the number of input ports on a Scope block.
For inserting a figure in a technical report, it is recommended that you send the data to Workspace and plot them out using yyaxis in MATLAB.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 2-D and 3-D Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by