后知后觉 发表于 2007-5-14 09:47

错误:Attempt to execute SCRIPT contour as a function

= meshgrid(-2:0.05:5,-2:0.05:5);
sigma = 1;
p=;
MU = ;
Z=1/(2*pi*sqrt(1-p(1)^2))*exp(-1/2/(1-p(1)^2)*((X-MU(1)).^2-2*p(1)*(X-MU(1)).*(Y-MU(2))+(Y-MU(2)).^2));
contour(X,Y,Z,,'r-')
hold on;
Z=1/(2*pi*sqrt(1-p(2)^2))*exp(-1/2/(1-p(2)^2)*((X-MU(1)).^2-2*p(2)*(X-MU(1)).*(Y-MU(2))+(Y-MU(2)).^2));
contour(X,Y,Z,,'b-.')
Z=1/(2*pi*sqrt(1-p(3)^2))*exp(-1/2/(1-p(3)^2)*((X-MU(1)).^2-2*p(3)*(X-MU(1)).*(Y-MU(2))+(Y-MU(2)).^2));
contour(X,Y,Z,,'g:')
legend('mu=0.5时的等高线','mu=-0.5时的等高线','mu=0时的等高线')
axis tight

昨天还能画出图来的,今天给同学看看,结果就运行不了了。
提示:Attempt to execute SCRIPT contour as a function。
谁知道错在哪里了?

eight 发表于 2007-5-14 09:48

原帖由 后知后觉 于 2007-5-14 09:47 发表 http://www.chinavib.com/forum/images/common/back.gif
= meshgrid(-2:0.05:5,-2:0.05:5);
sigma = 1;
p=;
MU = ;
Z=1/(2*pi*sqrt(1-p(1)^2))*exp(-1/2/(1-p(1)^2)*((X-MU(1)).^2-2*p(1)*(X-MU(1)).*(Y-MU(2))+(Y-MU(2)).^2));
conto ...


帖子 [原创]写给学习 matlab 的新手们 中第二个技巧

后知后觉 发表于 2007-5-14 09:51

如果先运行
= meshgrid(-2:0.05:5,-2:0.05:5);
sigma = 1;
p=;
MU = ;
Z=1/(2*pi*sqrt(1-p(1)^2))*exp(-1/2/(1-p(1)^2)*((X-MU(1)).^2-2*p(1)*(X-MU(1)).*(Y-MU(2))+(Y-MU(2)).^2));
contour(X,Y,Z)
运行完后,再运行上面的程序就能出答案了。可是为什么呢?哪位朋友遇到过?

[ 本帖最后由 后知后觉 于 2007-5-14 09:58 编辑 ]

eight 发表于 2007-5-14 09:55

原帖由 后知后觉 于 2007-5-14 09:51 发表 http://www.chinavib.com/forum/images/common/back.gif
如果先运行
= meshgrid(-2:0.05:5,-2:0.05:5);
sigma = 1;
p=;
MU = ;
Z=1/(2*pi*sqrt(1-p(1)^2))*exp(-1/2/(1-p(1)^2)*((X-MU(1)).^2-2*p(1)*(X-MU(1)).*(Y-MU(2))+(Y-MU(2)). ...


估计 contour 函数被你同学重命名了

后知后觉 发表于 2007-5-14 09:56

文件名没有冲突啊?我是直接把命令粘贴到matlab中的。
而且都是在我自己的电脑上运行的。很是纳闷

[ 本帖最后由 后知后觉 于 2007-5-14 09:59 编辑 ]

eight 发表于 2007-5-14 09:59

原帖由 后知后觉 于 2007-5-14 09:56 发表 http://www.chinavib.com/forum/images/common/back.gif
文件名没有冲突啊?我是直接把命令粘贴到matlab中的。

我的意思是你同学之前使用 matlab 的时候,自定义了一个 contour 函数(他也许不知道这会与 matlab 自带的 contour 函数重名),因此之后无论是你使用,还是他使用,只要在他的 matlab 中运行你的程序,均会出现这个问题。建议版主在他的 matlab 中按照精华贴的方法测试一下,然后重新命名他定义的函数即可

eight 发表于 2007-5-14 10:00

而且都是在我自己的电脑上运行的。很是纳闷


那可能是你自己之前不经意地自定义了一个 contour 函数

我运行的结果:

[ 本帖最后由 eight 于 2007-5-14 10:01 编辑 ]

后知后觉 发表于 2007-5-14 10:03

谢谢eight大哥耐心的指点。:'( 感动中…………

bank103kimo 发表于 2008-9-29 15:32

前面加 function = meshgrid(-2:0.05:5,-2:0.05:5);

ChaChing 发表于 2009-4-18 14:59

回复 9楼 bank103kimo 的帖子

楼上的, 不是这个原因喔!
页: [1]
查看完整版本: 错误:Attempt to execute SCRIPT contour as a function