Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
如何在此Matlab函数内使用mesh()在2d中绘制高斯...
function G(Mean,Cov,c) icov = inv(Cov); det_cov = det(Cov); const = 1/(2*pi*sqrt(det_cov)); xx = linspace(Mean(1)-3*sqrt(Cov(1,1)),Mean(1)+3*sqrt(Cov(1,1))); yy = linspace(Mean(2)-3*sqrt(Cov(2,2)),Mean(2)+3*sqrt(Cov(2,2))); [xy] = 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)); contour(x,y,z,c); 回答: 只需将contour替换为mesh 。 另外,请尽量不要将Mean和Cov用作变量名。 mean和cov是Matlab函数,虽然拼写略有不同,但您仍在设置一些难以发现的错误。 更多&回答... |
![]() |
![]() |