
How to Create a Surface Plot from Table Data Imported from Excel
56 views (last 30 days)
Show older comments
Michaela Byrne
on 3 Mar 2022
Commented: Michaela Byrne
on 4 Mar 2022
I am trying to create a surface plot for the excel table shown in the image below using the "surf" function. TetherK and TetherC are my inputs. Power is my output (the white cells). I can't seem to get the surf fucntion to work. I imported the data and have a table in MATLAB for TetherK, TetherC, and my Output (shown below). What do I need to do so that I can make a surface plot from tables in MATLAB?




0 Comments
Accepted Answer
Scott MacKenzie
on 3 Mar 2022
Edited: Scott MacKenzie
on 3 Mar 2022
Given some test data (attached) similar to yours...

... a surface plot can be created thus...
M = readmatrix('testdata.xlsx');
[X,Y] = meshgrid(M(1,2:end),M(2:end,1));
Z = M(2:end,2:end);
surf(X,Y,Z);
The test data are random values. Hopefully, your plot will look more interesting.
More Answers (1)
Walter Roberson
on 3 Mar 2022
x = PlotTestS1.TetherK;
y = PlotTestS2.TetherCn
z = table2array(PlotTestS3) ;
surf(x, y, z, 'edgecolor', 'none')
0 Comments
See Also
Categories
Find more on Surface and Mesh Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!