put me out of my misery
Mostrar comentarios más antiguos
i have 3 matrices..
x = 1 * 264;
y = 1* 264;
z = 1 * 264;
contour(x,y,z) % error z must be 2* 2 or more
hence i did
[X,Y] = meshgrid(x,y); Z =griddata(x,y,z,X,Y);
contour(X,Y,Z) is giving some weird plot. Not desirable.
Now how to do it...
2 comentarios
Iain
el 31 de En. de 2014
What are you trying to plot?
contour(x,y,z) is expecting x to be a vector with n elements, y a vector with m elements, and z to be n by m (or is it m by n)
Respuesta aceptada
Más respuestas (3)
Mischa Kim
el 31 de En. de 2014
Rizwana, first option works just fine. Make sure that Z is an mxn matrix, where m and n are the length of the two vectors x and y. meshgrid , e.g., generates an appropriate grid.
x = rand(10,1);
y = rand(10,1);
[X,Y] = meshgrid(x,y);
Z = sin(X)+cos(X+Y);
figure
contour(X,Y,Z)
or see the documentation.
3 comentarios
Rizwana
el 31 de En. de 2014
Mischa Kim
el 31 de En. de 2014
The contour plot is more of a 3D type plot, where the dependent variable (Z) depends on two variables (X, Y). So it is not quite clear to me what you would like to achieve.
Rizwana
el 31 de En. de 2014
Looks like you actually want: plotyy or subplots:
plotyy(x,y,x,z) % plot angle against radius on the left hand y axis, and pressure against radius on the right hand y axis.
subplot(211)
plot(x,y)
subplot(212)
plot(x,z)
or
subplot(121)
plot(x,y)
subplot(122)
plot(x,z)
obviously, switch the x,y,z's around to plot against what you want to. - contour plots are only valid for 2-D signals, and you've only got 3 1D signals.
3 comentarios
Iain
el 31 de En. de 2014
Is circumferential pressure supposed to be a function of angle and radius?
If radius has "n" elements, and you have "m" angles, then you should get "n x m" pressures, and not have all three as being vectors.
For example, with a trivial function I know is wrong:
x= 0:0.1:1;
y= 0:36:360;
z = x' * y;
contour(x,y,z)
would work.
Rizwana
el 31 de En. de 2014
Walter Roberson
el 31 de En. de 2014
0 votos
7 comentarios
Rizwana
el 31 de En. de 2014
Walter Roberson
el 31 de En. de 2014
I did say it was new. Use TriScatteredInterp then.
Rizwana
el 31 de En. de 2014
Walter Roberson
el 31 de En. de 2014
Could you remind me of which MATLAB version you are using?
Rizwana
el 31 de En. de 2014
Walter Roberson
el 31 de En. de 2014
It appears that TriScatteredInterp appeared in R2009a. griddata() does exist in your release though.
Rizwana
el 3 de Feb. de 2014
Categorías
Más información sobre Contour Plots en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!