Is it possible to plot multiple equations with different intervals?

12 views (last 30 days)
If I have three different equations for example y=x, y=x^2, and y=sqrt(x), is it possible to graph them over three different intervals on the same graph. Like y=x is plotted from 0 to a, y=x^2 is plotted a to b, and y=sqrt(x) is plotted from b to c?

Accepted Answer

Star Strider
Star Strider on 24 Oct 2014
Yes.
For example:
x = [linspace(0,5,25); linspace(5,10,25); linspace(10,15,25)];
y = [x(1,:); x(2,:).^2; sqrt(x(3,:))];
figure(1)
plot(x', y')
grid
produces:
There are probably other ways of doing it, but this works.
  4 Comments
Johan Ahlberg
Johan Ahlberg on 19 Sep 2022
Hi, is there a way for the lines to be connected, as in that there is a straight line inbetween them?
Star Strider
Star Strider on 19 Sep 2022
@Johan Ahlberg — The point here was to not connect them. Connecting them simply requires reshaping the vectors —
x = [linspace(0,5,25); linspace(5,10,25); linspace(10,15,25)];
y = [x(1,:); x(2,:).^2; sqrt(x(3,:))];
figure(1)
plot(x', y')
grid
xlabel('X')
ylabel('Y')
title('Separated')
xv = reshape(x',1,[]);
yv = reshape(y',1,[]);
figure
plot(xv, yv)
grid
xlabel('X')
ylabel('Y')
title('Connected')
.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!