Clear Filters
Clear Filters

Regarding 3D plots with Matlab

3 views (last 30 days)
Hi - im trying to do a 3D plot in Matlab
I have a user defined function of the form:
[Number,~,...] = myfunc(parameter,arg2,...)
The first output argument (Number) is a real number. Parameter is a vector in 2 dimensional space. Can someone tell me how to plot Number on the z - axis given a prespecified set to which parameter belongs.
Thanks

Accepted Answer

Matt Tearle
Matt Tearle on 23 Mar 2011
So what kind of visualization do you want at the end? Do you want a surface? In which case you could do something like
x = 0:0.1:1;
y = -1:0.05:2;
[X,Y] = meshgrid(x,y);
params = [X(:),Y(:)];
n = size(params,1);
Z = zeros(n,1);
for k=1:n
Z(k) = myfunc(params(k,:),...);
end
Z = reshape(Z,size(X));
surf(X,Y,Z)
  1 Comment
Mads Svendsen-Tune
Mads Svendsen-Tune on 23 Mar 2011
Thanks alot, that seems to be exactly what im looking for.

Sign in to comment.

More Answers (1)

Matt Tearle
Matt Tearle on 22 Mar 2011
I'm not sure I understand what you're after. It sounds a bit like
plot3(parameter(1),parameter(2),Number,'o')
  1 Comment
Mads Svendsen-Tune
Mads Svendsen-Tune on 23 Mar 2011
I want to plot my function, f: R^2 -> R. My function f takes as input a parameter vector and some other stuff. I want to plot my function for
parameter1 = [ 0,1 ] and parameter2 = [0.5 , 1] say.
Thank you for helping out!

Sign in to comment.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!