绘图错误"内存耗尽或请求的大小太大"

时间:2016-08-16 14:31:37

标签: matlab plot octave

如果我想使用八度音阶绘制sin(x)图表,我会这样做

x = -6:0.1:6;
plot (x, sin(x));

这可行。

我想绘制一个sigmoid函数,所以我尝试了

x = -6:0.1:6;
plot (x, 1/(1+exp(-x)));

但是这给了我

error: memory exhausted or requested size too large for range of Octave's index type -- trying to return to prompt

我尝试了x = -4:0.2:4;,这次是

error: invalid conversion of NDArray to Matrix
error: evaluating argument list element number 2

有什么问题?

1 个答案:

答案 0 :(得分:1)

问题出在1/(1+exp(-x))。 MATLAB抛出的错误是:

Error using  / 
Matrix dimensions must agree.

根据Carandraug's comment Octave失败:

operator /: nonconformant arguments (op1 is 1x1, op2 is 1x121)

你想要的是elementwise division(注意点):

x = -6:0.1:6;
plot (x, 1./(1+exp(-x)));

enter image description here