Using countourf for 1D vectors

2 visualizaciones (últimos 30 días)
Güinther SAIBRO
Güinther SAIBRO el 14 de Sept. de 2017
Comentada: Güinther SAIBRO el 19 de Sept. de 2017
Hi.
I have 3 unidimensional vectors like: x=[x1,x2,x3,...]; y=[y1,y2,y3,...] and z=[z1,z2,z3,...]. z is a function of x and y, and I have a pair x/y for each z value z1=f(x1,y1).
If a try to use contourf, I need a matrix and I get a lot of NaN elements, with these NaN I cant't reach a good visualization of my signal.
Would you have some solution to display some level courbes with just the vectors?
Thank you.
  1 comentario
KSSV
KSSV el 15 de Sept. de 2017
Show us the code you have for x,y and z....it can be sorted..

Iniciar sesión para comentar.

Respuestas (1)

Akira Agata
Akira Agata el 15 de Sept. de 2017
By using meshgrid and griddata, you can create contour from 3 unidimensional vectors, like:
% 1D data
x = randn(1,400);
y = randn(1,400);
z = x.*exp(-x.^2-y.^2)
% Interpolate for x-y grid
[xq,yq] = meshgrid(-2:.2:2, -2:.2:2);
zq = griddata(x,y,z,xq,yq);
% Visualize the result
figure
contourf(xq,yq,zq);
colorbar;
  1 comentario
Güinther SAIBRO
Güinther SAIBRO el 19 de Sept. de 2017
I got the same problem, a lot of NaN values...

Iniciar sesión para comentar.

Categorías

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

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by