Drawing a line to divide two parts of a curve
13 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Nour BS
le 15 Sep 2021
Réponse apportée : Nour BS
le 15 Sep 2021
Hello,
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,
0 commentaires
Réponse acceptée
Star Strider
le 15 Sep 2021
Try this —
x = linspace(0, 20);
y = (1-exp(-0.1*x));
xq = 10;
yq = interp1(x,y,xq)
figure
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
.
0 commentaires
Plus de réponses (2)
Dave B
le 15 Sep 2021
Modifié(e) : Dave B
le 15 Sep 2021
You can draw a vertical line very easily with xline
area works well for filling a part of the curve
x=linspace(-3,3,100);
y=exp(-x.^2);
hold on
cutoff=.35;
area(x(x<cutoff),y(x<cutoff),'FaceAlpha',.2,'EdgeColor','none')
plot(x,y,'LineWidth',2)
xline(cutoff,'LineWidth',2,'Label',"The Value is " + cutoff,'LabelOrientation','horizontal')
0 commentaires
Voir également
Catégories
En savoir plus sur Annotations dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!