关于MATLAB用plot函数画图的相关问题???

来源:百度知道 编辑:UC知道 时间:2024/07/03 04:38:01
有一矩阵
s =

0.5415 -0.2415 0.2000 0
-1.2244 1.3829 1.3415 0.5000
0.8951 -2.2902 0.8951 2.0000
画图时要用到S中的一行值,如函数
y=s(1,1)x*x*x+s(1,2)x*x+s(1,3)x+s(1,4)。问题是怎么画出它的函数图像!
以下是我的源代码:
s =

0.5415 -0.2415 0.2000 0
-1.2244 1.3829 1.3415 0.5000
0.8951 -2.2902 0.8951 2.0000

>> x=0:0.01:1;
>> y='s(1,1)x*x*x+s(1,2)x*x+s(1,3)x+s(1,4)';
>> plot(x,y)
就出现了错误:
??? Error using ==> plot
Error in color/linetype argument.
我是新手,不要见笑~~~~~~
哦,原来是这样子的~~~~
我还有一个问题就是如何将一个分段函数画在一个图内~~~比如s=0.48x*x*x-0.18x*x+0.2x【0<=x<=1】s=-0.104(x-1)*(x-1)*(x-1)+1.25(x-1)*(x-1)+1.28(x-1)+0.5 【1<=x<=2】s=0.68(x-2)*(x-2)*(x-2)-1.86(x-2)*(x-2)+0.68(x-2)+2.0 【2<=x<=3】
这是一个困扰本人很久的问题,如能解决万分感激!!!追加25分

你画图是的语句:
>> y='s(1,1)x*x*x+s(1,2)x*x+s(1,3)x+s(1,4)';
系数和未知数之间要加上“*”号,似乎楼上已经帮你解决了,呵呵!

不过补充的问题我帮你解决吧:(你给的分段函数定义域只是[0,3]

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
x0=0:0.01:3;
s=zeros(1,length(x0));
for x=0:0.01:3
i=round(x*100)+1;
if x>=0&x<=1
s(i)=0.48*x^3-0.18*x^2+0.2*x;
end
if x>1&x<=2
s(i)=-0.104*(x-1)^3+1.25*(x-1)^2+1.28*(x-1)+0.5;
end
if x>2&x<=3
s(i)=0.68*(x-2)^3-1.86*(x-2)^2+0.68*(x-2)+2.0;
end
end
plot(x0,s)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

我执行结果画出的图第二段和第三段不连续啊,是不是你的公式那儿写错了,不过具体画的过程就是这样的,我想你肯定能看懂程序的,你再照着查查错,改一下自己的公式吧!

看了半天,还是不明白

这次好了。
%==================
clear all
s =[...
0.5415 -0.2415 0.2000 0
-1.2244 1.3829 1.3415 0.5000
0.8951 -2.2902 0.8951 2.0000]
x=0:0.01:1;
y=s(1,1)*x.*x.*x+s(1,2)*x.*x+s(1