Effacer les filtres
Effacer les filtres

How to fill the plot to some specific value

3 vues (au cours des 30 derniers jours)
Kai Wang
Kai Wang le 27 Jan 2024
Modifié(e) : Star Strider le 27 Jan 2024
Like this plot, fill the curve to some specific y value

Réponse acceptée

Star Strider
Star Strider le 27 Jan 2024
Modifié(e) : Star Strider le 27 Jan 2024
Try this —
t = linspace(0, 2*pi, 500);
s = sin(t);
figure
plot(t, s, 'LineWidth',1.5)
Lv1 = s >= 0.5;
Lv2 = s <= -0.5;
hold on
patch([t(Lv1) flip(t(Lv1))], [0.5*ones(size(s(Lv1))) flip(s(Lv1))], 'b', 'FaceAlpha',0.25, 'EdgeColor','none')
patch([t(Lv2) flip(t(Lv2))], [-0.5*ones(size(s(Lv2))) flip(s(Lv2))], 'b', 'FaceAlpha',0.25, 'EdgeColor','none')
hold off
Ax = gca;
Ax.XAxisLocation = 'origin';
Ax.XMinorTick = 'on';
Ax.YMinorTick = 'on';
Make appropriate changes to get the result you want.
EDIT — Added minor ticks.
.

Plus de réponses (0)

Catégories

En savoir plus sur Line Plots dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by