Buscar en este blog

miércoles, 27 de febrero de 2008

Objetos Flotantes 1: Tablas en LaTeX

Un objeto Flotante permite que principalmente una tabla o una figura se vea mejor en el documento, dándole un espacio necesario para su ubicación.

Existen dos entornos que generan espacios en el documento, table y figure.
Es preferible usar el entorno table para colocar dentro una tabla (colocar dentro el entorno tabular) y el entorno figure para colocar figuras. La explicación aparece cuando empezamos a usar los comandos \caption.


El entorno table:
Este entorno tiene la siguiente estructura:
\begin{table}[pos]

Aquí puede ir el entorno \tabular (ver más abajo)
\end{table}
El argumento pos puede ser h (here), t (top), b(bottom), p (page of floats; el objeto quedará en una página solamente de tablas o figuras) que indica dónde será puesto el objeto flotante. Esto es sólo una sugerencia para LaTeX, ya que LaTeX lo posicionará donde mejor quede visualmente (de acuerdo a su criterio).


Lo Elemental Para Crear Una Tabla:

Básicamente, para crear una tabla se necesita usar el entorno
tabular. Se debe declarar el número de columnas que va a tener la tabla.

La estructura es la siguiente:

\begin{tabular}{xxx}
col1 fila1 & col2 fila1 & ... \
\
col1 fila2 & col2 fila2 & ... \\
col1 fila3 & col2 fila3 & ... \\
\end{tabular}

Cada x representa una variable que puede ser: l (columna con contenido ajustado a la izquierda), c (columna con contenido centrado), r (columna con contenido ajustado a la derecha), p{ancho} (columna párrafo con el texto verticalmente alineado hacia la parte superior). Al poner cada una de estas letras o variables se generará una nueva columna.
La variable x también puede ser un símbolo '' o '', que generará una división simple o doble entre columnas, respectivamente.

Para cambiar de una columna a otra se usa el símbolo '&' y para cambiar de fila se usa el comando '\\'. Otro comando útil es el \hline, que genera una línea horizontal completa entre filas, y el '\cline{x-y}', que genera una línea horizontal solamente entre la columna 'x' y la columna 'y'.


Ejemplo 1:
\begin{tabular}{ccc}
Nombre & Apellido & Nota \\
\hline
Jorge & López & 5 \\
Pedro & Muñoz & 6 \\
\end{tabular}

Ejemplo 2:

\begin{tabular}{lccrr}
\hline
Lugar & Manos & Pies & Dedos & Precio
\\
\h
line 1 & 4 & 1 & 3 &13000\\
\cline{2-4} 2 & 5 & 2 & 4 & 21000\\
3 & 0 & 1 & 12 & 500\\
\cline{1-2} \cline{4-4} 4 & 1 & 2 &1 & 7600\\
\hline \hline
\end{tabular}




Anteriormente se nombró la varible p{ancho}. El argumento 'ancho' corresponde al ancho que tendrá esa columna. Se definirá con unidades de medida que a continuación se detallan:

- pt: un punto equivale a 1/72 pulgadas.
- mm: milímetro.
- cm: centímetro.
- in: pulgada.
- ex: esta unidad equivale a la altura de una x en el fondo actualmente usado.
- em: esta unidad corresponde a una M (mayúscula) en el fondo actualmente usado.

Ejemplo 3:
\begin{tabular}{p{4cm}p{3cm}}
Este espacio t
iene un ancho de cuatro centímetros. & Y este espacio tiene un ancho de tres centímetros.
\end{tabular}

El comando \multicolumn
Este comando tiene la forma \multicolumn{número de columnas}{posición}{texto}. Se posicionará siempre al comenzar una fila o inmediatamente después de un '&'.

Para empezar a usar este comando (bastante útil), se debe primero usar el entorno tabular definiendo, como ya se sabe, el número total de columnas de la tabla. Luego, si se desea, dentro de alguna columna hacer una división de dos o más columnas es necesario usar el comando \multicolumn. Es importante que el número de columnas sea menor o igual al total de columnas de la tabla y la posición puede ser l,c,r o p{}. Si se usa p{} al principio del entorno tabular y además en el comando \multicolumn es importante que no haya contradicciones entre las dimensiones escogidas para cada caso.

Ejemplo 4:
\begin{tabular}{cccc}
\multicolumn{2}{c}{Colores} & \multicolumn{2}{c}{Tamaños}\\
\hline
rojo & verde & grande & pequeño\\
amarillo & azul & gigante & diminuto
\end{tabular}



Obs: Si se desea una línea divisoria entre la palabra Colores y Tamaño, entomces basta con cambiar
\multicolumn{2}{c}{Colores} por \multicolumn{2}{c}{Colores}, por ejemplo.

\multirow package
Este comando sirve para que, a partir de una fila, se generen otras filas adicionales en columnas distintas. Para esto es necesario utilizar \usepackage{multirow} en el preámbulo del documento.

Ahora, para generar múltiples filas se usa el comando \multirow, que tiene la forma \multirow{número de filas}{ancho}{texto}. Como se puede apreciar, es similar al comando \multicolumn y sólo difieren en el argumento 'ancho'. Aquí hay dos opciones, colocar una medida fija (dependiendo del espacio que se desee ocupar) o usar el argumento '*' (asterisco), que permite ajustarse de manera natural al contenido.

Este comando se usa al principio de una fila o luego de un '&'. Bajo este comando simplemente se deben dejar celdas en blanco hasta que termine la función del comando.

Ejemplo 5:
\begin{tabular}{lll}
\multicolumn{3}{c}{Campeonato}\\

\cline{2-3}
& \multicolumn{1}{c}{Día}& \multicolumn{1}{c}{Actividad} \\
\cline{2-3}
\multirow{3}{*}{Primera etapa} & Lunes 20 & Paseo\\
& Martes 21 & Prueba 1 \\
& Miércoles 22 & Prueba 2 \\
\hline
\multirow{2}{*}{Segunda etapa} & Jueves 23& Prueba final\\
& Viernes 24& Premiación\\
\end{tabular}


En este último ejemplo se intentó usar todos los comandos conocidos anteriormente.

Nota: Las imágenes adjuntadas aquí tienen menor calidad que las producidas en LaTeX (en LaTeX, no existe pixelación).
Cualquier comentario, sugerencia o duda sobre esta información por favor enviar un mail (jonysatie@gmail.com)