Matlab画图求助 我想画一个函数的图像 函数y=3+x^2*5/(6+3*x^2), x的范围:0:0.001:50

我自己尝试画了一下,老是报错
??? Error using ==> mpower
Matrix must be square.
应该是x变成向量之后,y=3+x^2*5/(6+3*x^2)表达式书写有问题

这样写肯定有问题啦,matlab是矩阵运算的。

x=0:0.001:50;

y=3+x.^2*5./(6+3*x.^2);

 plot(y)

这样就对了。注意x下面和除号的前面都有一点。

追问

表达式中加点号,是不是有什么技巧,或是有什么判断法则?

追答

matlab中plot画图都为矩阵运算,用到乘除或乘方等都要加点。 你下个matlab教程看看就知道了,这是最基本的。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-14
将函数改成y=3+x.^2*5/(6+3*x.^2)就可以了,注意x右下的点了:)追问

这样改没有语法错误了,但是结果是不对的,结果看我的贴图
这样y计算出来就是固定的一个值了,不对的,是不是别的问题?

追答

改成y=3+5*x.^2./(6+3*x.^2)这样就行了。图如天涯_1110所示。

第2个回答  2011-04-14
向量需要点乘。在所有*注意改成.*追问

这样改没有语法错误,但结果是不对的
因为表达式有常量,单独改成点乘,最后得到的y就是一个固定的数值

相似回答