呈现函数值随三个参数而变化,一个数字[重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

我想通过一个图来澄清函数及其三个参数之间的关系,例如y = f(a,b,c),其中y随三个参数a,b,c而变化。

但似乎不可能。这个问题有什么好的解决方案吗?或其他合理的方法可以很好地形象化关系?

我想知道我是否可以绘制具有三个轴a,b,c的三维图形,并使用颜色深度来表示函数值。这可以实现吗?

matlab 3d data-visualization matlab-figure
1个回答
1
投票

这是使用scatter3绘制多个变量的示例。更改标记类型可添加更多功能。请注意,我们仍未使用S中的scatter3(X,Y,Z,S,C)(标记大小)参数。

但是,对于某些应用程序,这可能不是一个很好的可视化。下面列出了一些其他资源。

3D Scatterplot example with different markers and colors for higher dimensional visualization.

% MATLAB R2017a
n = 50;
X = 10*rand(n,1);
Y = 15*rand(n,1);
Z = 20*rand(n,1);
V = 100*rand(n,1); 

idxA = X + Y > 15;
idxB = ~idxA;

colormap(cmap), hold on, box on
p(1) = scatter3(X(idxA),Y(idxA),Z(idxA),[],V(idxA),'filled');
p(2) = scatter3(X(idxB),Y(idxB),Z(idxB),[],V(idxB),'filled');
p(2).Marker = 'd';
cb = colorbar;
view([-5 -2 -2])

p(1).MarkerEdgeColor = 'k';
p(2).MarkerEdgeColor = 'k';
xlabel('X')
ylabel('Y')
zlabel('Z')
cb.Label.String = 'V';  

其他资源: 这款post采用3D和4D解决方案。未来的访问者可能会发现这个post也很有价值,因为它有很多带代码的例子。

MATLAB参考: MATLAB Plot Types MATLAB Plot Gallery

© www.soinside.com 2019 - 2024. All rights reserved.