使用matlab进行可视化/表面处理

时间:2014-03-29 20:12:12

标签: image matlab plot surface

如何将矩阵导入Matlab,然后将其可视化为曲面?

我想在最后得到这样的东西:

http://www.mathworks.se/help/matlab/ref/meshgrid.html

为了能够做到这一点,我必须首先将它作为meshgrid的输入(根据文件),但我不知道如何做到这一点。

enter link description here

我在Matlab中是全新的......

提前致谢

1 个答案:

答案 0 :(得分:1)

根据您希望实现的目标,有许多可能性(文件格式,可视化功能等)。我能想到的最简单的例子如下。

假设您的工作目录中有一个名为data.txt的文件,其中包含

1 2 3 4

5 6 7 8

9 10 11 12

13 14 15 16

17 18 19 20

然后是命令

M = load('data.txt');
surf(M)
xlabel('x')
ylabel('y')
title('Matrix M')

会给你以下情节

Matrix visualisation

由于矩阵M不是方阵,您可以在图中看到为每个轴分配了哪个维度。


要更改视点,您可以使用view命令。此图中总结了此命令的所有内容

enter image description here

取自http://www.mathworks.com/help/matlab/visualize/setting-the-viewpoint-with-azimuth-and-elevation.html

要传递给view命令的第一个参数是方位角,第二个参数是高程,如上图所示。

例如,如果要使x和y轴上的值的顺序反转,则可以先读取当前的方位角和高程

% get from current axes the attribute View
current_view = get(gca,'View');

并使用view(current_view + [180 0])进行更改。结果是

enter image description here

您还可以交互式旋转绘图:在图窗口的工具栏上有一个圆形箭头。您可以单击它以激活它,然后单击并在窗口内拖动。