Curso de LaTeX

Anuncio
7 Inclusión de Gráficos
7.1.
Gráficos en LATEX
La inclusión de gráficos en LATEX depende hasta cierto punto de la plataforma de uso,
y hace que la inclusión de cierto tipo de gráficos sea más dificultosa que otros. Los formatos más recomendables para su uso son el Encapsulated PostScript (EPS) y el formato
PostScript (PS). Si usamos PDFLATEX, los formatos más comunes son PDF, PNG, JPG o
GIF. Los archivos son insertados dentro del fichero LATEX mediante el comando
\includegraphics{hnombre del ficheroi}
Para poder usar este comando es preciso cargar el paquete
\usepackage{graphicx}
que puede llevar como opción algún controlador especial que haga posible la inclusión de
otro tipo de formatos no comunes en LATEX (p.e. ‘emf’, ‘wmf’, etc.). Este tipo de ficheros
no son recomendables para trabajar con LATEX.
7.1.1.
El comando \includegraphics
La sintaxis de este comando es:
\includegraphics[hopcionesi]{hnombre del ficheroi}
Las opciones disponibles para \includegraphics son:
width
Anchura del gráfico (escalándolo si es necesario).
height
Altura del gráfico (escalándolo si es necesario).
scale
Define un factor de escala a aplicar en ambas direcciones.
angle
clip
Especifica un ángulo de rotación en grados (en sentido positivo).
Es un parámetro lógico. Si se le asigna el valor true el
gráfico será recortado (no escalado) a las dimensiones especificadas. El comando \includegraphics* es equivalente a
\includegraphics[clip].
48
7.1
Gráficos en LATEX
49
Ejemplos
\includegraphics[width=1.5in]{duck.pdf }
\includegraphics[width=1in,height=1.5in]{duck.pdf }
\includegraphics[height=1in,angle=45]{duck.pdf } \includegraphics[angle=45,heigth=1in]{duck.pdf }
7.1.2.
Ubicación de gráficos
Por defecto, LATEX busca los archivos gráficos en los directorios predeterminados por
TEX. Además, es posible especificar directorios para la búsqueda de estos archivos mediante
el comando \graphicspath. La sintaxis es
\graphicspath{{dir1/}{dir2/}}
7.1.3.
Extensiones de los ficheros gráficos
El comando \DeclareGraphicsExtensions le dice a LATEX qué extensiones intentar en un archivo en el que no hemos especificado su extensión para ser incluido con el
comando \includegraphics. Por ejemplo,
\DeclareGraphicsExtensions{.eps,.ps,}
si vamos a compilar con LATEX, o
\DeclareGraphicsExtensions{.png,.pdf,.jpg,.gif }
si compilamos con PDFLATEX.
Con este comando, si aparece una orden del tipo
\includegraphics{nombre}
el compilador buscará primero el archivo con extensión declarada en primer lugar y si no
lo encuentra probará con las siguientes.
Para evitar tener que especificar el tipo de archivo, y poder compilar indistintamente
A
con LTEX o PDFLATEX, podemos incluir el siguiente código en un archivo de estilo:
Inclusión de Gráficos
\newif\ifpdf
\ifx\pdfoutput\undefined
\pdffalse
\else
\pdfoutput=1
\pdftrue
\fi
\ifpdf
\usepackage[pdftex]{graphicx}
\usepackage[usenames,dvipsnames]{color}
\pdfcompresslevel=9
\pdfpageheight=12in
\else
\usepackage{graphicx}
\usepackage[usenames]{color}
\fi
\ifpdf
\DeclareGraphicsExtensions{.png,.jpg,.pdf,.mps,.gif,.bmp}
\else
\DeclareGraphicsExtensions{.eps,.ps}
\fi
7.2.
Rotar y escalar objetos
El paquete graphicx incluye otros comandos para manipular objetos como
\scalebox{2}{\includegraphics{fichero.ps}}
\resizebox{4in}{!}{\includegraphics{fichero.ps}}
\rotatebox{45}{\includegraphics{fichero.ps}}
que son equivalentes a
\includegraphics[scale=2]{file.eps}
\includegraphics[width=4in]{file.eps}
\includegraphics[angle=45]{file.eps}
LAT
EX
Sin embargo, los primeros son aplicables a objetos que no son necesariamente archivos
gráficos, como por ejemplo
\rotatebox{45}{\fbox{\Large
\textcolor{blue}{\LaTeX}}}
7.3.
LA
T
EX
50
\rotatebox{145}{\fbox{\Large
\textcolor{blue}{\LaTeX}}}
Objetos flotantes
La inclusión de figuras puede presentar problemas a la hora de ubicarlas en el texto
pues al no poder ser divididas no pueden aparecer en cualquier punto del documento. Para
resolver este problema, es necesario tratar este tipo de objetos como objetos flotantes, que
son situados donde el compilador estima conveniente.
7.4
7.4.
Creación de figuras flotantes
51
Creación de figuras flotantes
Las figuras flotantes se crean con el entorno figure, en cuyo interior situamos el
correspondiente gráfico con \includegraphics. La sintaxis del entorno es:
\begin{figure}[hposicióni]
\centering
\includegraphics{figure.eps}
\caption{hPie de la figurai}
\label{hetiquetai}
\end{figure}
7.4.1.
Caracterı́sticas
Los comandos \caption y \label son opcionales y sirven para situar una leyenda
para la figura, que aparecerá numerada. Dicha numeración se asignará a la etiqueta \label (ver Capı́tulo 11). El comando \label debe se situado inmediatamente
después del \caption.
Si el comando \caption no aparece se crea una figura sin numerar.
El comando \listoffigures (normalmente situado al inicio del documento) genera
una lista con todas las figuras incluidas en el documento.
El comando \caption puede llevar un argumento opcional que especifica el texto
que aparecerá en la Lista de Figuras. En caso de no aparecer, dicho texto es el mismo
que el argumento obligatorio del comando. Por ejemplo,
\caption[Texto para la lista]{Pie de la figura}
7.4.2.
Ejemplo
Figura 2 Ejemplo de figura
7.5.
Posicionamiento de Figuras
La posición en la que la figura aparece en el texto está determinada por el argumento
opcional que puede ser una (o más de una) de las siguientes letras h, t, b, p.
52
Inclusión de Gráficos
h Sitúa la figura allı́ donde aparece el entorno. Esta opción no puede ser
ejecutada siempre, pues es posible que el gráfico no entre en el espacio
de página que reste.
t Sitúa la figura en la parte superior de la página.
b Sitúa la figura en la parte inferior de la página.
p Sitúa la figura en una página separada.
Si no se especifica la posición, el compilador toma por defecto la secuencia [tbp].
Cuando se incluye una figura flotante, LATEX leerá la figura y la tendrá en memoria
hasta que encuentre una posición que considere adecuada para incluirla en el texto. En
ciertos casos es posible que el compilador tenga en memoria un número considerable de
objetos sin procesar, que pueden dan lugar a colapsar la compilación y se obtenga un error.
Para evitar esta situación (en general, muy improbable) están los siguientes comandos
\clearpage
\FloatBarrier
Este comando proceso todos los objetos sin procesar y
comienza una nueva página.
Este comando provoca que todos los objetos sin procesar sean procesados, pero a diferencia de \clearpage
no comienza una nueva página. Requiere cargar el paquete placeins.
Si cargamos el paquete placeins con la opción section,
\usepackage[section]{placeins}
se procesan todas las figuras en la sección en la que aparecen. La sentencia anterior redefine el comando \section, insertando un \FloatBarrier antes del comienzo de cada
sección.
La opción below
\usepackage[below]{placeins}
es menos restrictiva, pues permite que los objetos sean situados después del comienzo de
una nueva sección, siempre que algo de la sección anterior aparezca en misma página.
7.6.
El paquete subfigure
El paquete subfigure permite introducir figuras con más de un gráfico, y pies de figuras personalizados, como el que sigue:
El ejemplo anterior se ha realizado con el código
\begin{figure}[h]
\centering
\subfigure[Pato de anchura 4cm]{
\includegraphics[width=4cm]{duck} }
\subfigure[Pato de anchura 5cm]{
\includegraphics[width=5cm]{duck} }
\caption{Varias figuras en una}
\end{figure}
7.7
(a) Pato de anchura 4cm
Configuración del entorno
53
(b) Pato de anchura 5cm
Figura 3 Varias figuras en una
7.7.
Configuración del entorno
Los siguientes parámetros son usados por LATEX para prevenir diseños no aceptables
en la configuración de páginas con figuras.
7.7.1.
Contadores de posición
topnumber
Máximo número de objetos permitidos en la parte superior de la
página (por defecto es 2)
bottomnumber
Máximo número de objetos permitidos en la parte inferior de la
página (por defecto es 1)
totalnumber
Máximo número de objetos permitidos en cualquier página (por
defecto es 3)
Estos contadores previenen contra el posicionamiento de muchos objetos en la misma
página de texto. Estos contadores no afectan a las páginas de figuras. Si especificamos
el parámetro ! junto con las opciones de posición, LATEX ignorará estos parámetros. Para
cambiar los valores de estos comandos usamos el comando \setcounter. Por ejemplo,
\setcounter{totalnumber}{2}
7.7.2.
Afinando un poco más
También es posible controlar el porcentaje en una página de texto que va a ser usado
por figuras. Los comandos de la tabla siguiente determinan estos porcentajes, que equivalen
al cociente entre la altura de los objetos flotantes dividida por \textheight. El uso del
parámetro ! en el argumento opcional de posición del objeto hace que LATEX ignore los tres
primeros comandos.
Para modificar los valores anteriores es preciso el uso del comando
\renewcommand del siguiente modo:
\renewcommand{\textfraction}{0.3}
54
Inclusión de Gráficos
\textfraction
Mı́nima fracción de texto ocupado en una página de texto. El
valor por defecto es 0.2.
\topfraction
Máxima fracción de una página de texto que puede ser ocupada
por objetos flotantes en la parte superior. El valor por defecto es
0.7.
\bottomfraction
Máxima fracción de una página de texto que puede ser
ocupada por objetos flotantes en la parte inferior. El
valor por defecto es 0.3.
\floatpagefraction
Mı́nima fracción de una página de objetos flotantes que
puede ser ocupada por los mismos. El valor por defecto es 0.5, lo que significa que el espacio en blanco en
una página de objetos flotantes no puede ser mayor que
1-\floatpagefraction.
Descargar