Matlab - Gráfica 3D

 
Vista:

Gráfica 3D

Publicado por arturo.mj (8 intervenciones) el 20/11/2015 09:59:14
Buenas,

Tengo una serie de coordenadas X-Y y luego para cada punto que forman tengo un valor Z. Lo que quiero, y no consigo hacer, es un plot en 3D donde la "altura" sea Z y que además en función del valor haya un gradiente de color.

Algo así como lo que se haría con un "scatter(x,y,'tamaño puntos',z)" pero en 3D.

He probado a intentar con meshgrid, surf... pero soy incpaz.

Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Gráfica 3D

Publicado por Master of Plotting Desing (1 intervención) el 20/11/2015 10:48:51
Mira tio, el plot xy es un arte en si mismo y por lo que veo tu no estas capacitado para ello. Te recomiendo que te plotees la cabeza y el cerebro, intentes plotear tu vida y ya cuando estres capacitado, plotea en matlab. Amigo, no te lo tomes a mal pero cuando haces plot... ya no hay stop.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-2
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Gráfica 3D

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 20/11/2015 13:39:50
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
clear all
n=500;
close all
x=sort(10*rand(1,n));
 y=100*rand(1,n);
 z=50*rand(1,n);
 color=rand(n,3);
 hold on
 axis([min(x) max(x)   min(y) max(y)      min(z) max(z)])
 for i=1:length(x);
 
 plot3(x(i),y(i),z(i),'*','color',color(i,:))
 axis([min(x) max(x)   min(y) max(y)      min(z) max(z)])
 end
  axis([min(x) max(x)   min(y) max(y)      min(z) max(z)])
  xlabel('X');
  ylabel('Y');
  zlabel('Z');
  view(36,18)
  grid on
 hold off


Saludos
JOSE JEREMÍAS CABALLERO
Asesoría online en Matlab
Servicios de programación matlab
[email protected]
Estimado Usuario, el correo es para servicios de: cursos, asesorías y servicios de programación en Matlab. Toda ayuda gratuita es vía for
o

http://matlabcaballero.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Gráfica 3D

Publicado por arturo.mj (8 intervenciones) el 21/11/2015 20:10:31
Muchas gracias por contestar Jose.

Pero me temo que me he explicado mal. Lo que necesito es representar una superficie (de ahí mis intentos meshgrid, surf...). Una superficie en el plano XY donde para cada coordenada X-Y existe una altura Z, pero superficie, no puntos. No se si debo hacer algún tipo de interpolación o qué. Pero la idea en "imagen" sería como si sobre el plot3 que describes dejásemos caer una manta...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Gráfica 3D

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 21/11/2015 20:22:29
1
2
3
4
5
6
7
8
9
clear all
n=10;
close all
x=sort(10*rand(1,n));
 y=100*rand(1,n);
 z=50*rand(1,n);
 [X,Y]=meshgrid(x,y);
 [Z,Z]=meshgrid(z,z);
 surf(X,Y,Z)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Gráfica 3D

Publicado por Moises Rangel (2 intervenciones) el 08/01/2016 01:36:40
Muchas Gracias amigo, me has salvado la vida.
Estoy trabajando en mi tesis y no sabia como hacer una grafica asi, solo tuve que sustituir donde dice X,Y,Z por lo valores que yo quiero y me hace el plano exacto.

Muchas Gracias!!!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar