How to plot a 2d contour using 3d source of data (measured and recorded within a spreadsheet)

4 visualizaciones (últimos 30 días)
Hi there,
It would be my greatest pleasure if anyone could assist me with plotting a 2d contour from the attached data (derived from an experiment and stored within a Excel file). It would be so much appreciated if you could do me a favor and include all the MATLAB required scriptting. Thanks!

Respuesta aceptada

Mohammad Dabbagh
Mohammad Dabbagh el 22 de Mzo. de 2021
Thank you so much for your quick reply. I truly appreciate it.
I tried this code:
t = readtable('C:\Users\moham\Desktop\Sample.xlsx', 'VariableNamingRule', 'preserve');
N = 50;
x = t{:,1};
y = t{:,2};
irrad = t{:,3};
xvec = linspace(min(x), max(x), N);
yvec = linspace(min(y), max(y), N);
[Xg, Yg] = meshgrid(xvec, yvec);
F = scatteredInterpolant(x, y, irrad);
Ig = F(Xg, Yg);
contourf(Xg, Yg, Ig); colorbar
However, it shows me the following eror:
Error using readtable (line 216)
Invalid parameter name: VariableNamingRule.
  1 comentario
Walter Roberson
Walter Roberson el 22 de Mzo. de 2021
t = readtable('C:\Users\moham\Desktop\Sample.xlsx');
Warning: Column headers from the file were modified to make them valid MATLAB identifiers before creating variable names for the table. The original column headers are saved in the VariableDescriptions property.
Set 'VariableNamingRule' to 'preserve' to use the original column headers as table variable names.
N = 50;
x = t{:,1};
y = t{:,2};
irrad = t{:,3};
xvec = linspace(min(x), max(x), N);
yvec = linspace(min(y), max(y), N);
[Xg, Yg] = meshgrid(xvec, yvec);
F = scatteredInterpolant(x, y, irrad);
Ig = F(Xg, Yg);
contourf(Xg, Yg, Ig); colorbar

Iniciar sesión para comentar.

Más respuestas (1)

Walter Roberson
Walter Roberson el 22 de Mzo. de 2021
Editada: Walter Roberson el 22 de Mzo. de 2021
t = readtable('https://www.mathworks.com/matlabcentral/answers/uploaded_files/557822/Sample.xlsx', 'VariableNamingRule', 'preserve');
N = 50;
x = t{:,1};
y = t{:,2};
irrad = t{:,3};
xvec = linspace(min(x), max(x), N);
yvec = linspace(min(y), max(y), N);
[Xg, Yg] = meshgrid(xvec, yvec);
F = scatteredInterpolant(x, y, irrad);
Ig = F(Xg, Yg);
contourf(Xg, Yg, Ig); colorbar

Categorías

Más información sobre Data Distribution Plots en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by