标签: matlab plot piecewise
尝试绘制0和1的信号函数,非常类似于下面问题的解决方案: How to plot non-numeric data in Matplotlib
但是,当函数从0变为1时,我想要有垂直线而不是弯曲线。例如,如果f(x)= 0则x = 1 2 3 4且f(x)= 1之后,我想要y = 0到x = 5的水平线,x = 5的垂直线从y = 0到y = 1,然后是y = 1的水平线
可以在绘图功能中完成吗?或者我需要绘制一大块正方形?
谢谢!
答案 0 :(得分:4)
您可以使用stairs或area功能。如图所示here:
%# Sample input x = 1:10; y = [0 0 0 0 1 1 1 1 1 1]; subplot(2,1,1) stairs(x,y) title('Stairs chart (non area)') subplot(2,1,2) x = [x;x]; y = [y;y]; area(x([2:end end]),y(1:end)) title('Stairs area')
答案 1 :(得分:0)
您是否尝试过stairs功能?