Los ambientes Picture, Figure y Minipage

Una pregunta frecuente que surge al momento de insertar gráficos o imágenes en \LaTeX: ¿Cómo podemos insertar 2 imágenes o gráficos uno al lado del otro? Como sabran, usando el paquete “graphics” (debemos escribir “\usepackage{graphics}” en el preámbulo) es posible insertar una imagen usando el ambiente “figure“, sin embargo, solo el ambiente “figure” no nos permite colocar 2 imagenes (independientes) juntas una al lado de la otra… para hacerlo debemos recurrir al ambiente “minipage” que nos permite tratar una imagen o gráfico como un objeto, lo que permite colocar varias imagenes juntas una al lado de la otra. Como ejemplo utilizaremos 2 gráficos hechos en el ambiente “picture“, que trabaja sobre un lienzo cartesiano y donde es posible trabajar con vectores, rectas, circulos y curvas (desgraciadamente con tamaños y ángulos limitados):

cuyo código es

    \begin{figure}[h!]
    \hspace*{-2.7cm}\begin{minipage}[b]{.4\linewidth}
    \setlength{\unitlength}{5cm}
    \hspace*{7.25cm}\begin{picture}(3,1)
    \put(0,-.5){\vector(0,1){1}}
    \put(-.5,0){\vector(1,0){1}}
    \put(-.13,.43){$\scriptstyle f(x)$}
    \put(.5,-.05){$\scriptstyle x$}
    \put(-.45,-.45){\line(1,1){.9}}
    \put(.37,.46){$\scriptscriptstyle y=x$}
    \multiput(-.3,0)(0,-.014){22}{\line(0,1){.005}}
    \multiput(.3,0)(0,.014){22}{\line(0,1){.005}}
    \put(.025,-.05){$\scriptscriptstyle x_2^*=0$}
    \put(-.36,.05){$\scriptscriptstyle x_1^*=-1$}
    \put(.24,-.05){$\scriptscriptstyle x_3^*=1$}
    \put(-.312,-.01){$\scriptscriptstyle\bullet$}
    \put(.288,-.01){$\scriptscriptstyle\bullet$}
    \put(-.012,-.01){$\scriptscriptstyle\bullet$}
    \put(-.45,-.58){\tiny Figura 1: Puntos fijos de $f(x)=x^3$.}
    \end{picture}
    \end{minipage}
    \begin{minipage}[b]{.4\linewidth}
    \setlength{\unitlength}{5cm}
    \hspace*{7.25cm}\begin{picture}(3,1)
    \put(0,-.5){\vector(0,1){1}}
    \put(-.5,0){\vector(1,0){1}}
    \put(-.13,.43){$\scriptstyle f(x)$}
    \put(.5,-.05){$\scriptstyle x$}
    \put(-.45,-.45){\line(1,1){.9}}
    \multiput(.2,0)(0,.014){15}{\line(0,1){.005}}
    \put(.14,-.05){$\scriptscriptstyle x^*=1$}
    \put(.188,-.01){$\scriptscriptstyle\bullet$}
    \put(.37,.46){$\scriptscriptstyle y=x$}
    \qbezier(-.1,.1)(.273,.11)(.3,.45)
    \put(-.45,-.58){\tiny Figura 2: Punto fijo de $f(x)=x^2-x+1$.}
    \end{picture}
    \end{minipage}
    \end{figure}
    

El comando “\hspace*{ }” es unicamente utilizado para corregir el centrado de las 2 imagenes en la hoja. El comando “\put(x,y){ }” coloca lo que se encuentre como argumento en la posición (x,y), el comando “\line(x,y){ }” dibuja un segmento en la dirección del vector (x,y) con longitud el argumento que se le indique, el comando “\multi(x,y)(dx,dy){ }{ }” coloca el objeto que se encuentra en el segundo arcumento tantas veces como lo diga el primer argumento ubicandolo inicialmente en la coordenada (x,y) y sumando (dx,dy) (a la posición inicial) para copiar el siguiente elemento en esa nueva posición. Finalmente, el comando “\qbezier(x_1,x_2)(y_1,y_2)(z_1,z_2)” fabrica una curva de Bezier que pasa por los 3 puntos que posee como argumentos (estas curvas suelen ser un poco “porfiadas” xD); veamos un ejemplo más complejo del uso de curvas de Bezier:

Esta imagen corresponde al diagrama de fase derivado del sistema mecánico conservativo que modela un oscilador armónico simple. El código para generar este gráfico corresponde a

    \setlength{\unitlength}{6cm}
    \hspace*{7.25cm}\begin{picture}(3,1)
    \put(0,-.5){\vector(0,1){1}}
    \put(-.5,0){\vector(1,0){1}}
    \put(-.11,.48){$\scriptstyle \omega(t)$}
    \put(.5,-.04){$\scriptstyle \theta(t)$}
    \qbezier(-.35,0)(0,-.4)(.35,0)
    \qbezier(-.35,0)(0,.4)(.35,0)
    \qbezier(.35,0)(.38,.06)(.44,.12)
    \qbezier(.35,0)(.38,-.06)(.44,-.12)
    \qbezier(-.35,0)(-.38,-.06)(-.44,-.12)
    \qbezier(-.35,0)(-.38,.06)(-.44,.12)
    \qbezier(-.44,.18)(-.37,.03)(-.23,0.16)
    \qbezier(-.23,0.16)(-.15,0.23)(0,.25)
    \qbezier(.44,.18)(.37,.03)(.23,0.16)
    \qbezier(.23,0.16)(.15,0.23)(0,.25)
    \qbezier(.44,-.18)(.37,-.03)(.23,-0.16)
    \qbezier(.23,-.16)(.15,-.23)(0,-.25)
    \qbezier(-.44,-.18)(-.37,-.03)(-.23,-.16)
    \qbezier(-.23,-.16)(-.15,-.23)(0,-.25)
    \qbezier(-.44,.23)(-.37,.08)(-.23,0.21)
    \qbezier(-.23,0.21)(-.15,0.28)(0,.3)
    \qbezier(.44,.23)(.37,.08)(.23,0.21)
    \qbezier(.23,0.21)(.15,0.28)(0,.3)
    \qbezier(.44,-.23)(.37,-.08)(.23,-.21)
    \qbezier(.23,-.21)(.15,-.28)(0,-.3)
    \qbezier(-.44,-.23)(-.37,-.08)(-.23,-.21)
    \qbezier(-.23,-.21)(-.15,-.28)(0,-.3)
    \qbezier(-.44,.28)(-.37,.13)(-.23,0.26)
    \qbezier(-.23,0.26)(-.15,0.33)(0,.35)
    \qbezier(.44,.28)(.37,.13)(.23,0.26)
    \qbezier(.23,0.26)(.15,0.33)(0,.35)
    \qbezier(.44,-.28)(.37,-.13)(.23,-.26)
    \qbezier(.23,-.26)(.15,-.33)(0,-.35)
    \qbezier(-.44,-.28)(-.37,-.13)(-.23,-.26)
    \qbezier(-.23,-.26)(-.15,-.33)(0,-.35)
    \qbezier(-.2,0)(-.18,-.09)(0,-.12)
    \qbezier(-.2,0)(-.18,.09)(0,.12)
    \qbezier(.2,0)(.18,.09)(0,.12)
    \qbezier(.2,0)(.18,-.09)(0,-.12)
    \qbezier(-.15,0)(-.14,-.075)(0,-.085)
    \qbezier(-.15,0)(-.14,.075)(0,.085)
    \qbezier(.15,0)(.14,.075)(0,.085)
    \qbezier(.15,0)(.14,-.075)(0,-.085)
    \qbezier(-.24,0)(-.22,-.13)(0,-.16)
    \qbezier(-.24,0)(-.22,.13)(0,.16)
    \qbezier(.24,0)(.22,.13)(0,.16)
    \qbezier(.24,0)(.22,-.13)(0,-.16)
    \put(-.37,-.02){\color{blue} $\bullet$}
    \put(.33,-.02){\color{blue} $\bullet$}
    \put(-.02,-.02){\color{blue} $\bullet$}
    \put(-.5,-.032){\color{red} $\scriptscriptstyle (-\pi,0)$}
    \put(.37,-.032){\color{red} $\scriptscriptstyle (\pi,0)$}
    \put(.01,-.032){\color{red} $\scriptscriptstyle (0,0)$}
    \put(0.1,.328){\vector(4,-1){.025}}
    \put(0.1,.278){\vector(4,-1){.025}}
    \put(0.1,.228){\vector(4,-1){.025}}
    \put(0.1,.181){\vector(4,-1){.025}}
    \put(0.1,-.328){\vector(-4,-1){.025}}
    \put(0.1,-.278){\vector(-4,-1){.025}}
    \put(0.1,-.228){\vector(-4,-1){.025}}
    \put(0.1,-.181){\vector(-4,-1){.025}}
    \put(-0.1,.137){\vector(4,1){.025}}
    \put(-0.1,.094){\vector(4,1){.025}}
    \put(-0.14,.037){\vector(1,1){.025}}
    \put(-.366,-.02){\vector(-1,-2){.025}}
    \put(-.398,.09){\vector(1,-2){.025}}
    \put(.366,.02){\vector(1,2){.025}}
    \put(.398,-.09){\vector(-1,2){.025}}
    \end{picture}
    
Anuncios

Si te gustó el post, por favor dejanos tu comentario!!

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s