Write a MATLAB code where I'll show the plot or graph.
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Here is the condition. Now write a MATLAB code where I'll show the plot or graph.
y(x) = 3.75x+10 at 0<x<2
y(x) = -2.75x+22.5 at 2<x<4
y(x) = 12.5 at 4<x<6
y(x) = 2.5x-2.5 at 6<x<8
The plot or graph will be like this.
0 Kommentare
Antworten (2)
Walter Roberson
am 10 Sep. 2023
x = rand() * 2
y = @(t) -42*x + 53;
T = linspace(-3, 3);
for idx = 1 : length(T)
Y(idx) = y(T(idx));
end
plot(T, Y)
ylim([-90 90])
Why? Well, you define y as functions of t but there is no t in the formulas, so we have to assume that the items such as 0 < x < 2 mean that x is to some one random element of the given range.
2 Kommentare
Walter Roberson
am 10 Sep. 2023
I would point out that I illustrated several important points:
- constructing anonymous functions
- defining a range of values to evaluate over
- evaluating a non-vectorized function over a non-integer list of values
- plotting given a range and associated values
- adjusting plot y view to make sure the plot is entirely in-frame
The only extra thing you need beyond this is to either use hold on or to plot multiple lines in the same plot() call. Oh, and how to pass color information to plot(). See the plot() documentation.
Sam Chak
am 10 Sep. 2023
Hi @AZ Sajjad
This is a piecewise linear function because it is defined on a sequence of intervals, and there are a few ways to plot it. However, for beginners, I think that the following approach is easy to understand because you only need to specify the interval and expression for each linear function. I'll show how to plot the first three functions (you will handle the fourth one). Also, please note that the piecewise function contains two jump discontinuities, one at and another at .
If you want the linear functions to be continuous on their corresponding intervals, you will need to modify the equations so that and .
x1 = 0:0.01:2;
y1 = 3.75*x1 + 10; % 0 < x < 2
x2 = 2:0.01:4;
y2 = - 2.75*x2 + 22.5; % 2 < x < 4
x3 = 4:0.01:6;
y3 = 12.5*ones(1, numel(x3)); % 4 < x < 6
plot([x1, x2, x3], [y1, y2, y3])
xlabel('x')
ylabel('y')
title('Piecewise function')
label = {'17.5','17.0','11.5'};
yline([17.5 17.0 11.5], '--', label, 'color', '#A1B2C3')
0 Kommentare
Siehe auch
Kategorien
Mehr zu Line Plots finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!