Using countourf for 1D vectors

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 Kommentar

KSSV
KSSV am 15 Sep. 2017
Show us the code you have for x,y and z....it can be sorted..

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Akira Agata
Akira Agata am 15 Sep. 2017

0 Stimmen

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;

Kategorien

Mehr zu Contour Plots finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 14 Sep. 2017

Kommentiert:

am 19 Sep. 2017

Community Treasure Hunt

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

Start Hunting!

Translated by