Shading an area between two intervals on a plot
41 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Lui
am 8 Aug. 2020
Kommentiert: Star Strider
am 9 Aug. 2020
Hi everyone.
I have a vector of length 100 which I have plotted to yield a graph. I would like to shade the area under the graph segmented by the two lines using the area function.
I have tried the following code and it is unfortunate that it sheds the whole area. Any help will be appreciated.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/343480/image.png)
iz=linspace(15,20,6); % iz is the interval between the two xlines
yz=(FF(:,15:20)); % FF is the vector that generates the plot
area(iz,yz) % this should give me the area between two, shaded
Any corrections or better pointers are welcome.
2 Kommentare
Akzeptierte Antwort
Star Strider
am 9 Aug. 2020
It is likely not possible to use area for this, since that is not how it was designed to be used.
Try this:
x = linspace(0, 100);
y = x.*exp(-0.07*x);
figure
plot(x, y)
q2 = ylim;
hold on
L = (x>15) & (x<20);
patch([x(L) fliplr(x(L))], [y(L), ones(1,nnz(L))*min(ylim)],'r')
hold off
grid
.
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu 2-D and 3-D 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!