Plotting 3D data
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Adam Rajcan
el 22 de Feb. de 2021
Comentada: KSSV
el 22 de Feb. de 2021
Dear Matlab comunity, I struggle to solve seemingly a simple problem.
I have a 54x3 matrix which I would like to plot, such that first coloumn represents x-axis, second coloumn represents y-axis and third coloumn represents a value assigned to [x,y] points.
However, when I use surf(Error_matrix), what I get is a surface scaled such that x-axis goes from 1 to 3 (as number of coloumns), y-axis goes from 0 to 54 (as number of rows) and z gives some weird combination.
In other words, I have a 6x9 checker board with an value assigned to each intersection (representing an error) and I would like to plot an error value to each of the intersections. Please find the error_matrix attached.
Can you please help me out?
0 comentarios
Respuesta aceptada
KSSV
el 22 de Feb. de 2021
Editada: KSSV
el 22 de Feb. de 2021
load('Error_matrix.mat')
x = Error_matrix(:,1) ;
y = Error_matrix(:,2) ;
z = Error_matrix(:,3) ;
xi = unique(x) ; nx = length(xi) ;
yi = unique(y) ; ny = length(yi) ;
[X,Y] = meshgrid(xi,yi);
Z= reshape(z,ny,nx) ;
surf(X,Y,Z)
2 comentarios
KSSV
el 22 de Feb. de 2021
You have a m*3 data.....for this you cannot use surf unless you arrange them into a matrices X, Y and Z.
Más respuestas (0)
Ver también
Categorías
Más información sobre Surface and Mesh 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!