% % % Biofisica 2006 - FCEyN - UBA % Introduccion a Matlab % Graficos de funciones - Polinomio de Taylor % clear all;close all; FS=15; % define el tamanio de las letras %% Forma elemental y rapida de graficar una funcion. x = -pi:0.1:pi; % vector 'x' y = sin(x); % vector 'y' plot(x,y) % grafico elemental de y vs. x %% Forma mas sofisticada de graficar... figure %% crea una nueva figura plot(x,y,'LineWidth',3) % Graficamos y a cont. definimos propiedades del grafico set(gcf,'Color','w'); % color del background axis([-max(x) max(x) -1.5*max(y) 1.5*max(y)]) % Extender los ejes para tener un marco de referencia grid on; % Una grilla para calibrar el espacio xlabel('-\pi \leq \theta \leq \pi','FontSize',FS) % titulo del eje x (ver uso de las letras griegas) ylabel('Y','FontSize',FS); % titulo del eje y set(gca,'FontSize',FS); % define el tamanio de las letras de los ejes set(gcf,'Position',[100 100 500 400]) % posicion del grafico %% Ahora le podemos agregar mas funciones al mismo grafico %% Por ejemplo, vamos a graficar tres polinomios de Taylor del sin(x) %% alrededor del 0. hold on % congela el ultimo grafico para agregarle otros graficos encima P1 = x; % polinomio taylor de orden 1 P3 = x-x.^3/6; % polinomio taylor de orden 3 P5 = x-x.^3/6+x.^5/120; % polinomio taylor de orden 5 plot(x,P1,'--r','LineWidth',2) %% plot(x,P3,'--g', 'LineWidth',2) plot(x,P5,'--k','LineWidth',2) h = legend('Sin(\theta)','P_1(\theta)','P_3(\theta)','P_5(\theta)',2); % le agrega una leyenda %% Graficar varias funciones en una misma figuras usando subplots. t=[1:1000]; %definimos eL tiempo como un vector de 1 a 1000 con incrementos de a 1 figure;set(gcf,'Color','w'); subplot(2,2,1);plot(t,cos(t/50));xlabel('t','FontSize',FS);ylabel('x','FontSize',FS);grid on;title('Coseno'); subplot(2,2,2);plot(t,exp(-t/150));xlabel('t','FontSize',FS);ylabel('x','FontSize',FS);grid on;title('Exp'); subplot(2,2,3);plot(t,sin(t/50).*cos(t/50));xlabel('t','FontSize',FS);ylabel('x','FontSize',FS);grid on;title('Seno*Coseno'); subplot(2,2,4);plot(t,1./(1+(t/150)));xlabel('t','FontSize',FS);ylabel('x','FontSize',FS);grid on;title('1/(1+t)');