Borrar filtros
Borrar filtros

how to plot Contour Plot?

2 visualizaciones (últimos 30 días)
Radhika Kulkarni
Radhika Kulkarni el 15 de Dic. de 2019
Comentada: Star Strider el 15 de Dic. de 2019
I have 3 variables data in xls file. I want to plot contour plot of one variable against other 2 variables on x and y axis. How do I do this?

Respuesta aceptada

Star Strider
Star Strider el 15 de Dic. de 2019
I assume your variables are vectors. If they are gridded, it is only necessary to use the reshape function to form them into matrices.
If they are not gridded, something like this will work:
x = rand(20, 1);
y = rand(20, 1);
z = rand(20, 1);
xv = linspace(min(x), max(x), 50);
yv = linspace(min(y), max(y), 50);
[X,Y] = ndgrid(xv, yv);
Z = griddata(x, y, z, X, Y);
figure
contourf(X, Y, Z)
Experiment to get the result you want.
  4 comentarios
Radhika Kulkarni
Radhika Kulkarni el 15 de Dic. de 2019
My contour lines value is showing as 80.34678, how do I round it of to 80 and so on?
Star Strider
Star Strider el 15 de Dic. de 2019
If you know the values you want for the contours, the easiest way is to specify them in a vector as the fourth argument to contourf:
x = rand(20, 1);
y = rand(20, 1);
z = rand(20, 1)*100;
xv = linspace(min(x), max(x), 50);
yv = linspace(min(y), max(y), 50);
[X,Y] = ndgrid(xv, yv);
Z = griddata(x, y, z, X, Y);
colorcol = linspace(0.1, 0.9, 10); % Define Number Of Intensities (Here 10)
cmap = zeros(numel(colorcol), 3); % Define ‘colormap’ Here
cmap(:,2) = colorcol(:); % Choose Green ([R G B])
figure
contourf(X, Y, Z, [20 40 60 80], 'ShowText','on')
colormap(cmap)
Here the plot shows only the contours at [20 40 60 80]. Specify whatever values you want.

Iniciar sesión para comentar.

Más respuestas (0)

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