MATLAB Answers

Drawing a line to divide two parts of a curve

3 views (last 30 days)
Nour BS
Nour BS on 15 Sep 2021
Answered: Nour BS on 15 Sep 2021
How can I draw a vertical line in a curve to divide two parts of the curve and color the first part?
Thanks in advance,

Accepted Answer

Star Strider
Star Strider on 15 Sep 2021
Try this —
x = linspace(0, 20);
y = (1-exp(-0.1*x));
xq = 10;
yq = interp1(x,y,xq)
yq = 0.6321
plot(x, y)
hold on
plot([1 1]*xq, [0 yq]) % Vertical Line
Lv = x<=xq;
patch([x(Lv) fliplr(x(Lv))], [zeros(1,nnz(Lv)) fliplr(y(Lv))], 'g', 'FaceAlpha',0.5) % Shaded ARea
hold off
Experiment with my code and your data

More Answers (2)

Dave B
Dave B on 15 Sep 2021
Edited: Dave B on 15 Sep 2021
You can draw a vertical line very easily with xline
area works well for filling a part of the curve
hold on
xline(cutoff,'LineWidth',2,'Label',"The Value is " + cutoff,'LabelOrientation','horizontal')

Community Treasure Hunt

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

Start Hunting!