3D plot from excel data

9 visualizzazioni (ultimi 30 giorni)
Francesco Marchione
Francesco Marchione il 22 Apr 2021
Commentato: Star Strider il 12 Mag 2023
Hello,
I have an excel sheet cointaining x,y,z data in three columns (see attached file).
I would like to plot a 3D graph from this data.
Thanks everyone

Risposta accettata

Star Strider
Star Strider il 22 Apr 2021
Try this:
T1 = readtable('https://www.mathworks.com/matlabcentral/answers/uploaded_files/593500/prova_stress.xlsx', 'VariableNamingRule','preserve');
Q1 = T1(1:25,:);
VarNames = T1.Properties.VariableNames;
x = T1{:,1};
y = T1{:,2};
z = T1{:,3};
[Ux,iax,ixx] = unique(x);
[Uy,iay,ixy] = unique(y);
N = 25;
xv = linspace(min(x), max(x), N);
yv = linspace(min(y), max(y), N);
[Xm,Ym] = ndgrid(xv, yv);
Zm = griddata(x, y, z, Xm, Ym);
Warning: Duplicate data points have been detected and removed - corresponding values have been averaged.
figure
surfc(Xm, Ym, Zm)
grid on
xlabel(VarNames{1})
ylabel(VarNames{2})
zlabel(VarNames{3})
.
  6 Commenti
Mohammed Saifuddin Ustad
Mohammed Saifuddin Ustad il 12 Mag 2023
okay that i have tried but do you have any idea with pchip interpolaton or any other interpolation that would make this plot better
and sure i will keep that in mind
Star Strider
Star Strider il 12 Mag 2023
I don’t. I looked at other interpolation functions, and they all have essentially the same options, with interp2 also having 'cubic' and 'makima'.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by