简体   繁体   中英

How to plot a 3d surface graph in MATLAB?

I have a dataset like so:

  | 0.1  0.2  0.3  0.4
----------------------
1 | 10   11   12   13
2 | 11   12   13   14
3 | 12   13   14   15
4 | 13   14   15   16

I want to plot a 3D surface graph in matlab such that the column headings will be on the y axis, the row headings will be on the x axis and the remaining values will determine the height of the point on the z axis.

I have had a look around at lots of different example and I can't work out how to achieve this. At the moment I have got the following:

Y = [0.1 0.2 0.3 0.4];
X = [1 2 3 4];
Z = [10 11 12 13; 11 12 13 14; 12 13 14 15; 13 14 15 16];

Please could someone help me out?

surf(X,Y,Z)

May a bar plot yield the desired picture?

Y = [0.1 0.2 0.3 0.4];
X = [1 2 3 4];
Z = [10 11 12 13; 11 12 13 14; 12 13 14 15; 13 14 15 16];

figure;
bar3(Z)
set(gca(gcf), 'xticklabel',{'0.1','0.2','0.3','0.4'})

3d图

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM