网格(...)问题Matlab

时间:2011-03-18 16:10:59

标签: matlab

我有这个代码,它正确地绘制了一个高斯模型,但是当试图用网格绘制它时我有一个错误,请你告诉我如何纠正它:

covariances = [1 0; 0 1];
Mean = [1 0]
mycolor = 'r';

icov = inv(covariances);
det_cov = det(covariances);
const = 1/(2*pi*sqrt(det_cov));

xx = linspace(Mean(1)-3*sqrt(covariances(1,1)),Mean(1)+3*sqrt(covariances(1,1)));
yy = linspace(Mean(2)-3*sqrt(covariances(2,2)),Mean(2)+3*sqrt(covariances(2,2)));

[x y] = meshgrid(xx,yy);
mx=x-Mean(1);
my = y-Mean(2);

z=const*exp(-0.5*(icov(1,1)*mx.^2+icov(2,1)*mx.*my +icov(2,1)*my.*mx+icov(2,2)*my.^2));

figure(1)
contour(x,y,z,mycolor);
figure(2)
mesh(x,y,z,mycolor);

我遇到mesh(x,y,z,mycolor);

的问题
??? Error using ==> mesh at 72
Property value pairs expected.

1 个答案:

答案 0 :(得分:0)

由于mycolor是一个字符串,而不是与xyz相同的颜色值矩阵,MESH需要它作为property/value pair输入,如下:

mesh(x,y,z,'EdgeColor',mycolor);

我建议查看文档,了解有关coloring mesh and surface plots

的更多信息