Построение пошаговой (кусочной) функции с вертикальными линиями - PullRequest
1 голос
/ 14 ноября 2011

Попытка построить функцию сигнала 0 и 1, очень похоже на решение, данное для вопроса ниже: Как построить нечисловые данные в 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 после этого

Можно ли это сделать в течениефункция сюжета?Или мне нужно нарисовать тонну квадратов?

Спасибо!

Ответы [ 2 ]

4 голосов
/ 14 ноября 2011

Вы можете использовать функции лестница или площадь . Как показано здесь :

%# 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')

Stairs with area

0 голосов
/ 14 ноября 2011

Вы пробовали функцию лестница ?

...