How to plot a table in a way that first column and first raw are x and y axis?
8 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hello
I have a table of data in csv format (shown below) and want to plot them in Matlab using surf function. First column and first row are the x and y axis. Middel onse are collected data. It seems reading raw is a problem in Matlab. Can anyone suggest an easy way to plot such a table? All my tries failed :(
my data look like this in csv file:
0 100 200 300 400
330 53 45 76 22
340 21 34 32 87
A = readmatrix ('Y1.csv');
x = A(:,1) ;
y = A(1,:) ;
z = A(2:end,2:end) ;
z = transpose(z)
surf (x, y, z)
shading interp
0 comentarios
Respuesta aceptada
dpb
el 1 de Mayo de 2020
There is no data for the (0,0) coordinate so it can't be in the X,Y vectors---and the Z array must be size(Z)-->[m,n] where X,Y correspond to [m,n]. IOW, you don't transpose...
x = A(2:end,1); % don't include origin; no data point available
y = A(1,2:end); % ditto
z = A(2:end,2:end) ;
surf (x, y, z)
2 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre 2-D and 3-D 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!