尝试绘制函数N * log2(N)时出现八度错误

时间:2017-09-19 08:33:24

标签: octave

我试图在Octave中绘制这个函数,我收到一个我不明白的错误。我已经成功地绘制了其他函数,但由于某种原因,这个函数无法正常工作。

N=[1:1:50];

y1Values = N*log2(N);

%plot (n, y1Values, 'LineWidth',2, n,y2Values, 'LineWidth',3);

plot (N, [ y1Values' ], 'LineWidth',3);

legend("e^N");

这会产生此错误

error: asstemp: operator *: nonconformant arguments (op1 is 1x50, op2 is 1x50)

错误:来自     在第2行第10栏上讨论

我不知道为什么*会有问题。它没有任何其他表达式。我是否需要以不同的方式编写表达式?

1 个答案:

答案 0 :(得分:2)

由于N是向量log2(N),因此也会返回一个向量,因此您尝试将两个向量相乘。但*是矩阵乘法。你想要的是元素乘法(.*):y1Values = N.*log2(N);