2016-05-17 3 views
0

У меня проблема с кодом Хэмминга в Matlab. Я создал бит строку длиной 1190 для передачи. Меня просят отобразить строку как кривую ступенчатой ​​функции.Matlab, ошибка при построении Heaviside. (Векторы должны быть одинаковой длины.)

После выполнения некоторых исследований я обнаружил, что функция Heaviside может использоваться для отображения битовой строки в виде ступенчатой ​​кривой.

Когда я использую команду fplot(heaviside(l_f),[0 ,10000]), чтобы построить кривую, где l_f является битовая строка длиной 1190, я получаю эту ошибку

Ошибка с помощью fcnchk (строка 106)

ПОТЕХИ должны быть функция, действительное строковое выражение или встроенный объектный объект .

Ошибка в fplot (строка 60) fun = fcnchk (fun);

Ошибка Untitled (строка 88) fplot (Хевисайда (l_f), [0, 10000])

Когда я показываю с помощью сюжета, т.е. plot(heaviside(l_f),[0 ,10000]), я получаю ошибку

Ошибка с использованием графика Векторы должны иметь одинаковую длину.

Ошибка в Untitled (строка 88) участка (Хевисайда (l_f), [0, 10000])

В любом случае, чтобы построить строку битов в качестве кривой шага функции?

ответ

0

fplot(heaviside(l_f),[0 ,10000]) не будет отображаться с fplot в качестве первого параметра требуется function. Но здесь это матрица. Поэтому вместо этого используйте plot. Затем размер heaviside(l_f) будет 1x1190, а размерность [0, 10000] - 1x2. Так что обычно работайте, так как размеры разные, поэтому используйте.

x=heaviside(l_f) 
y=0:(10000+1)/length(l_f):10000; 
plot(x,y); 
Смежные вопросы