2010-06-11 25 views
14

He deseado trazar este 'Hi', que puede ser 'Hello World' equivalente gráfico en MATLAB. No he podido hacerlo Cualquier sugerencia es bienvenida.Trazado 'Hola' en MATLAB

+0

Lo sentimos, no vi el enlace de 'Hola '. Borró la respuesta – yuk

+0

'meshgrid' y' mesh'? Estoy perdido en donde no pudiste hacerlo. – phwd

+0

@phwd: Lo estaba intentando con plot3 ..... ¡y nada parecía ceder! – Arkapravo

Respuesta

16

Aquí hay un código para la gráfica que usa la fórmula en la página vinculada y los límites de eje especificados. Puedes jugar con el mapa de colores, ver la dirección y otras propiedades para acercarte.

x = linspace(-3,3,50); 
y = linspace(-5,5,50); 
[X Y]=meshgrid(x,y); 
Z = exp(-X.^2-Y.^2/2).*cos(4*X) + exp(-3*((X+0.5).^2+Y.^2/2)); 
Z(Z>0.001)=0.001; 
Z(Z<-0.001)=-0.001; 
surf(X,Y,Z); 
colormap(flipud(cool)) 
view([1 -1.5 2]) 

cool MATLAB screenshot

+2

¡Eso es WOW! ... ¡pareces un MATLAB Guru! – Arkapravo

14

Parece @yuk se me adelantó, siendo esta es mi versión:

[x y] = meshgrid(linspace(-3,3,50), linspace(-5,5,50)); 
z = exp(-x.^2-0.5*y.^2).*cos(4*x) + exp(-3*((x+0.5).^2+0.5*y.^2)); 
idx = (abs(z)>0.001); 
z(idx) = 0.001 * sign(z(idx)); 

figure('renderer','opengl') 
patch(surf2patch(surf(x,y,z)), 'FaceColor','interp'); 
set(gca, 'Box','on', ... 
    'XColor',[.3 .3 .3], 'YColor',[.3 .3 .3], 'ZColor',[.3 .3 .3], 'FontSize',8) 
title('$e^{-x^2 - \frac{y^2}{2}}\cos(4x) + e^{-3((x+0.5)^2+\frac{y^2}{2})}$', ... 
    'Interpreter','latex', 'FontSize',12) 

view(35,65) 
colormap([flipud(cool);cool]) 
camlight headlight, lighting phong 

screenshot

+0

¡Parece realmente genial! +1 – yuk

+1

¡Buen trabajo, se ve increíble! ¡Si pudiera elegir 2 respuestas! :) – Arkapravo