Plotting 3 variables of a single function
2 次查看(过去 30 天)
显示 更早的评论
Is it possible to plot three variables x,y and z of a single function f?
i.e. f = x^2 + y^2 + z^2, for example?
I'd want to plot the function 'f' with a range of values for x,y and z.
I've been looking at contour maps for two variables and would now, somehow, like to expand it to three variables and able to represent the function pictorially via a plot in Matlab.
Thanks!
0 个评论
回答(2 个)
AJ von Alt
2014-1-28
Sliceomatic on Matlab file exchange is a useful tool for this sort of visualization.
4 个评论
AJ von Alt
2014-1-28
% define an array of values for x y and z
x = -10:0.1:10;
y = -10:0.1:10;
z = -10:0.1:10;
% create a meshgrid
[Xmesh,Ymesh,Zmesh] = meshgrid(x,y,z);
% compute the function value at the meshgrid points
f = Xmesh.^2 + Ymesh.^2 + Zmesh.^2;
% launch sliceomatic
sliceomatic(f,x,y,z)
You can then select slices using the x y and z controls or view layers using the iso surface control
Giuseppe Naselli
2014-4-24
Hi All,
I need to do the same (plotting F as function of X,Y,Z) but I do not know the relationship between them.
Basically I have 4 column vectors F,X,Y,Z.
I can do the meshgrid(X,Y,Z) but I do not know how to manipulate F in order to use sliceomatic
Any idea?
Thanks in advance
G
Walter Roberson
2014-1-28
For a full plot of 3 independent variables and one resultant variable, you need to encode the resultant variable as marker shape (one scatter3 or plot3 call for each different marker shape), or point size (scatter3; or a lot of plot3 calls), or as color (scatter3 or patch or a lot of plot3 calls), or as transparency (patch). (Though transparency by itself is hard to see.)
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Surface and Mesh Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!