我想在MATLAB中绘制一个匿名函数,它将向量作为参数。有谁知道解决方案?
以下是示例。
k=@( x1 , x2 ) exp(-C*sum((x1*ones(1,size(x2,2))-x2).^2)/0.5)';
wphi = @(xstar) ones(1,N)*(a.*y'.*k(xstar,x));
ystar=@(xstar)wphi(xstar)+b;
我想绘制ystar功能。然而; xstar是一个大小为2的向量。每当我使用像ezplot这样的绘图函数时,它假定xstar为双变量。正如我总结的那样;我想绘制ystar函数,例如在xstar的(-1,-1)到(1,1)的区间内。
答案 0 :(得分:0)
我无法对此进行测试,因为您的代码中有很多未定义的内容,我只能假设您的函数可以正常工作。但原则上,这应该有效:
xsv = linspace(-1, 1, 100);
[xstar1, xstar2] = meshgrid(xsv);
xstar = [xstar1(:), xstar2(:)];
surf(xstar1, xstar2, reshape(ystar(xstar), size(xstar1)))