可视化3D数据集

时间:2013-02-12 05:20:01

标签: matlab plot data-visualization

我有一个200乘50的矩阵。我想显示一个相应的网格颜色,y轴为50,x轴为200。我尝试使用 mesh 但是:

  1. 我在彩色部分之间留下了很多空白区域(我希望区域包含一个完整的正方形填充区域,最好还有一个围绕每个区域的框架)和

  2. 角度是3D-ish,而我希望它是“直接从上面”。

  3. mesh 对我来说是正确的工具还是我应该使用其他东西?

    到目前为止,我一直在使用以下代码。我愿意接受意见和建议。

    surf(values, 'EdgeColor','none');
    view(90, 90);
    

1 个答案:

答案 0 :(得分:4)

改为使用surf,例如:

% Create a grid of x and y points
g= linspace(-2, 2, 20);
[X, Y] = meshgrid(g, g);

% Define the function Z = f(X,Y)
Z = 10*exp(-X.^2-Y.^2);

% "phong" and "gouraud" lighting are good for curved, interpolated surfaces. 
surf(X, Y, Z); 
view(30, 75);
colormap(jet(256));
shading interp;
light;
lighting phong;

enter image description here

或者,如果您真的想要“从上方观看”,请使用view(0, 90);

enter image description here