How to Create a Surface Plot from Table Data Imported from Excel

96 vues (au cours des 30 derniers jours)
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?

Réponse acceptée

Scott MacKenzie
Scott MacKenzie le 3 Mar 2022
Modifié(e) : Scott MacKenzie le 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.
  1 commentaire
Michaela Byrne
Michaela Byrne le 4 Mar 2022
That worked, thanks! I'm including pictures of what I did in MATLAB to get it to work in case anyone else has a similar question to what I had and wants to see what I did.

Connectez-vous pour commenter.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 3 Mar 2022
x = PlotTestS1.TetherK;
y = PlotTestS2.TetherCn
z = table2array(PlotTestS3) ;
surf(x, y, z, 'edgecolor', 'none')

Produits


Version

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by