How to fill the plot to some specific value
3 次查看(过去 30 天)
显示 更早的评论
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1601436/image.png)
0 个评论
采纳的回答
Star Strider
2024-1-27
编辑:Star Strider
2024-1-27
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.
.
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Line Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!