Baixe o app para aproveitar ainda mais
Prévia do material em texto
Uma Introduc¸a˜o ao LATEX Eduardo Bearzoti 15 de dezembro de 2017 Este material foi elaborado a` ocasia˜o do minicurso Uma Introduc¸a˜o ao LATEX, oferecido em 15 de dezembro de 2017 como atividade integrante da vi Semana de Estat´ıstica da Universidade Federal de Ouro Preto. Por se tratar de um minicurso, aqui se propo˜e propiciar um panorama geral e uma ra´pida introduc¸a˜o ao programa de edic¸a˜o LATEX, voltado a iniciantes. Espera-se que a partir deste material o ouvinte tenha condic¸o˜es de iniciar suas pro´prias trajeto´ria e pesquisa com este poderoso programa de edic¸a˜o, principalmente a`queles que necessitam de ferramentas de edic¸a˜o matema´tica. 1 Introduc¸a˜o Ao pensar na edic¸a˜o de um texto, o pu´blico em geral imagina o uso de um editor no qual “o que se veˆ, e´ o que se obte´m”, ou seja, o que e´ digitado, virtualmente e´ o que e´ impresso. No caso de um programa como o LATEX, na˜o e´ assim. O que se digita e´ o conteu´do, juntamente com diferentes comandos. Trata-se de um arquivo de texto simples, correspondendo ao co´digo fonte. Em seguida, o LATEX processa este co´digo em linhas, para´grafos e pa´ginas, com o texto final diagramado. Este texto pode em seguida ser convertido em formato .pdf para visualizac¸a˜o e impressa˜o. Embora o LATEX seja um programa de linha de comando, e´ comum o uso de editores de LATEX, tais como o Texmaker e o TeXstudio. Em tais editores, tanto o processamento como a gerac¸a˜o (e visualizac¸a˜o) do arquivo .pdf sa˜o em geral integrados. O LATEX foi desenvolvido por Leslie Lamport nos anos 80 do se´culo passado, que acrescentou diversas macros ao programa de edic¸a˜o original TEX. Uma das vantagens do LATEX e´ a possibilidade de acre´scimo de inu´meros pacotes, que conferem grande variedade de recursos de edic¸a˜o. Um de seus pontos altos e´ a sua elevada qualidade de edic¸a˜o matema´tica, harmoniosamente integrada a` diagramac¸a˜o geral do texto. Com o LATEX, o usua´rio pode se concentrar ta˜o-somente no conteu´do do texto, e na˜o com a apresentac¸a˜o da informac¸a˜o. Ele e´ assim estimulado a pensar o texto de maneira lo´gica, quanto aos seus componentes, deixando a diagramac¸a˜o a cargo do compilador. Neste minicurso estaremos utilizando o editor de LATEX Texmaker. Instruc¸o˜es para sua instalac¸a˜o podem ser encontradas, por exemplo, em: https://gastaofmjr.wordpress.com/2014/03/06/instalacao-miktex-texmaker/ Para instalac¸a˜o na plataforma Windows, basicamente deve-se instalar, nesta ordem, os programas Ghostscript, Ghostview, MikTeX, e finalmente o editor Texmaker. Todos estes 1 programas sa˜o de livre acesso. No caso do MikTeX, que contem o LATEX , recomenda-se instalar o Net Installer. Este programa faz o download completo do MikTeX, e em seguida o instala. Por se tratar de um programa grande, e´ recomendado dispor de uma rede de alta velocidade para o download. 2 O Ba´sico Conforme o que foi exposto, “aprender LATEX” consiste basicamente em aprender a compor o co´digo fonte. Neste sentido, tentaremos aqui crescer em complexidade aos poucos. Antes de mais nada, como o LATEX produz, ao compilar um texto, alguns arquivos intermedia´rios, e´ interessante criar uma nova pasta toda vez que um novo texto for ser elaborado. O co´digo fonte pode enta˜o ser salvo nesta nova pasta. Um co´digo fonte LATEX e´ um arquivo texto (que recebe a extensa˜o .tex). Basicamente, e´ constitu´ıdo de um cabec¸alho, seguido do documento propriamente dito. Um exemplo (muito simples) de co´digo seria como o seguinte: % um primeiro exemplinho \documentclass{article} \begin{document} Meu primeiro texto em \LaTeX. \end{document} No cabec¸alho, declaramos o tipo de documento, no caso o de um artigo; trata-se de uma classe muito usada quando desejamos elaborar um texto mais simples, mesmo que na˜o se trate verdadeiramente de um artigo. Outra classe muito usada tambe´m e´ a de livro (\documentclass{book}), que possui recursos de divisa˜o em cap´ıtulos. No co´digo fonte, toda linha iniciada com o s´ımbolo de porcentagem corresponde a um comenta´rio (na˜o e´ processado). Caso haja de fato a necessidade de imprimir o s´ımbolo de porcentagem no texto final, e´ necessa´rio utilizar o comando \%. Perceba o uso da barra invertida \. A barra invertida indica que a palavra imediata- mente a seguir representa um comando, ou o in´ıcio ( como em \begin{document}) e o fim (\end{document}) de um ambiente. Ale´m do ambiente document, existem va´rios outros, como o de tabelas e o de figuras. Um exemplo de comando e´ o \LaTeX, que gera a palavra LATEX, com a diagramac¸a˜o oficial do programa. Sendo um caractere reservado, caso haja necessidade de imprimir no texto final uma barra invertida, esta pode ser obtida atrave´s do comando \textbackslash. O cabec¸alho tambe´m serve para declarar a utilizac¸a˜o de pacotes adicionais, dependendo das necessidades espec´ıficas de edic¸a˜o. Por exemplo, se no nosso exemplo escreveˆssemos palavras com acentuac¸a˜o da l´ıngua portuguesa: \documentclass{article} \begin{document} Fac¸o quest~ao de usar o \LaTeX. \end{document} 2 Verifica-se que o acento e o cedilha na˜o sa˜o gerados. E´ preciso carregar pacotes que possibilitem a edic¸a˜o em l´ıngua portuguesa. Uma opc¸a˜o consiste em carregar os pacotes babel e inputenc, respectivamente com as opc¸o˜es brazilian e utf8: \documentclass{article} \usepackage[brazilian]{babel} \usepackage[utf8]{inputenc} \begin{document} Fac¸o quest~ao de usar o \LaTeX. \end{document} Temos agora o texto em portugueˆs. Perceba o uso de colchetes antes da chave. Servem para especificar opc¸o˜es para um dado pacote. A declarac¸a˜o \documentclass tambe´m admite opc¸o˜es. Assim, podemos definir, por exemplo, o tamanho da fonte e o tamanho do papel, utilizando \documentclass[12pt,a4paper]{article}. E´ importante destacar que o LATEX e´ que cuida da diagramac¸a˜o do texto. O co´digo fonte na˜o precisa absolutamente estar diagramado. Por exemplo, geramos o mesmo texto anterior se digita´ssemos no documento, por exemplo: \begin{document} Fac¸o quest~ao de usar o \LaTeX. \end{document} Para comec¸armos um novo para´grafo, basta deixar uma linha em branco: \begin{document} Fac¸o quest~ao de usar o \LaTeX. E´ muito bom. \end{document} Dentro do conteu´do, podemos gerar efeitos especiais de fonte, como negrito, ita´lico e sublinhamento, usando os comandos \textbf{ }, \textit{ } e \underline{ }, res- pectivamente, dispondo o texto desejado dentro das chaves. Tambe´m podemos gerar tamanhos relativos maiores ou menores, em relac¸a˜o ao tamanho de fonte definido para o documento. Para ver estes efeitos, podemos exemplificar com o co´digo a seguir: \begin{document} Podemos gerar o efeito de \textbf{negrito}, \textit{ita´lico}, ou ainda \underline{sublinhado}. Tambe´m podemos alterar o tamanho relativo da fonte, por exemplo com uma fonte {\tiny bem pequena}, ou ainda com uma fonte {\huge bem grande}. \end{document} Va´rias outras opc¸o˜es de fonte podem ser consultadas, por exemplo, no livro LATEX Tutorials. 3 Perceba que por default o LATEX na˜o deixa espac¸os entre para´grafos. Caso se deseje que haja um espac¸amento maior entre para´grafos (digamos, 0,2 cm), podemos dispor, no cabec¸alho, o comando \setlength\parskip{0.2cm}. Podemos tambe´m acrescentar um t´ıtulo ao nosso trabalho ou artigo, com o nome do autor e a data (declarados no cabec¸alho), utilizando o comando \maketitle. Veja o resultado do co´digo a seguir: \documentclass{article} \usepackage[brazilian]{babel} \usepackage[utf8]{inputenc} \setlength\parskip{0.2cm} \title{Uma Introduc¸~ao ao \LaTeX} \author{Fulano de Tal e Qual} \date{15 de dezembro de 2017} \begin{document} \maketitle Podemos gerar o efeito de \textbf{negrito}, \textit{ita´lico}, ou ainda \underline{sublinhado}. Tambe´m podemos alterar o tamanhorelativo da fonte, por exemplo com uma fonte {\scriptsize pequena}, ou ainda com uma fonte {\Large grande}. \end{document} Um texto como um artigo cient´ıfico, por exemplo, possui sec¸o˜es, como Introduc¸a˜o, Re- visa˜o de Literatura, Metodologia etc. No LATEX especificamos novas sec¸o˜es com o comando \section{}, e subsec¸o˜es com o comando \subsection{}. O LATEX faz a numerac¸a˜o au- toma´tica das sec¸o˜es e subsec¸o˜es. Caso desejemos sec¸o˜es ou subsec¸o˜es na˜o numeradas, basta utilizar os comandos \section*{} e \subsection*{}. Dentro das chaves, dispo- mos o nome da sec¸a˜o ou subsec¸a˜o. Podemos alterar a largura das margens dos documentos utilizando o pacote geometry. Para margens de 2,5 cm de largura, por exemplo, podemos dispor no cabec¸alho: \usepackage[margin=2.5cm]{geometry}. O pacote geometry possui muito mais opc¸o˜es, que podem ser facilmente obtidas por uma busca na Internet. 3 Recursos de Edic¸a˜o Matema´tica Conforme dito na Introduc¸a˜o, o LATEX dispo˜e de numerosos recursos de edic¸a˜o e dia- gramac¸a˜o matema´tica. Expresso˜es matema´ticas sa˜o codificadas entre cifro˜es, quando a expressa˜o deve permanecer na linha, ou entre cifro˜es duplos, quando desejamos que a expressa˜o fique em uma linha a` parte. Para exemplificar, incorpore ao conteu´do do docu- mento o co´digo: A express~ao $\bar{X}= \sum X_i/n$ esta´ dentro da linha, enquanto que a 4 express~ao $$ Y_i = \beta_0 + \beta_1 X_i + \beta_2 X^2_i + \epsilon_i $$ esta´ numa linha a` parte. Este e´ um modelo de regress~ao quadra´tica. o qual gera a sa´ıda: A expressa˜o X¯ = ∑ Xi/n esta´ dentro da linha, enquanto que a expressa˜o Yi = β0 + β1Xi + β2X 2 i + �i esta´ numa linha a` parte. Este e´ um modelo de regressa˜o quadra´tica. O comando \bar{} coloca uma barra acima do texto que estara´ entre as chaves. Para obtermos os efeitos de subscrito e sobrescrito, como se poˆde ver, basta usar _ e ^, respectivamente. Se desejamos um subscrito ou um sobrescrito que contenha mais do que um caractere, devemos dispoˆ-los entre chaves. As letras gregas tambe´m sa˜o geradas como nos comandos acima. Para obtermos uma letra grega maiu´scula, basta usar a primeira letra maiu´scula. Por exemplo, veja a diferenc¸a entre \lambda e \Lambda. No caso das letras beta e epsilon, como suas maiu´sculas correspondem aos nossos B e E, na˜o ha´ comandos especiais para elas. Ja´ o comando \sum gera um somato´rio. Utilizando tambe´m aqui _ e ^, podemos definir os limites do somato´rio: $$ \sum_{i=1}^n (X_i - \bar{X})^2 $$ que gera a sa´ıda: n∑ i=1 (Xi − X¯)2 Para que este efeito ocorra dentro de uma linha, e´ preciso usar \sum\limits, seguido de _ e ^. O co´digo: Tanto $ \sum_{i=1}^n (X_i - \bar{X})^2 $ como $ \sum\limits_{i=1}^n (X_i - \bar{X})^2 $ est~ao na mesma linha, mas perceba a diferenc¸a nos limtes dos somato´rios. com sa´ıda: Tanto ∑n i=1(Xi − X¯)2 como n∑ i=1 (Xi − X¯)2 esta˜o na mesma linha, mas perceba a diferenc¸a nos limtes dos somato´rios. Na edic¸a˜o matema´tica, e´ muito comum o uso de frac¸o˜es. No LATEX isto e´ definido usando o comando \frac{}{}, com o numerador dentro da primeira chave, e o denomi- nador na segunda. Veja o seguinte exemplo: $$ \int_{-\infty}^{\infty} \frac{1}{\sqrt{2\pi\sigma^2}} e^{-\frac{(x-\mu)^2}{2\sigma^2}}dx=1 $$ que produz: 5 ∫ ∞ −∞ 1√ 2piσ2 e− (x−µ)2 2σ2 dx = 1 Perceba os novos comandos que apareceram. O comando \int gera uma integral, cujos limites sa˜o definidos da mesma maneira que a do somato´rio. Os comandos \infty e \sqrt{} geram o s´ımbolo de infinito e a raiz quadrada, respectivamente. Por vezes, necessitamos de colchetes, pareˆnteses ou chaves de tamanho maior. Basta para isso utilizar comandos correspondentes a “esquerda” e “direita”. Veja uma outra maneira de representar a integral anterior: $$ \int_{-\infty}^{\infty} \frac{1}{\sqrt{2\pi\sigma^2}} \exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)dx=1 $$ ∫ ∞ −∞ 1√ 2piσ2 exp ( −(x− µ) 2 2σ2 ) dx = 1 Aqui apareceu o comando \exp, de “exponencial”. Na˜o seria estritamente necessa´rio, pois poder´ıamos digitar a palavra exp, mas perceba que esta foi colocada com um efeito de fonte diferenciado. Ha´ comandos semelhantes para logaritmos (\ln e \log). Para uso de colchetes ou chaves a` esquerda e a` direita, ha´ os comandos equivalentes \left[, \right], \left\lbrace e \right\rbrace. A todo \left deve haver um \right. Se por acaso desejamos apenas uma chave a` esquerda, devemos usar \left\lbrace, mas, ao final da expressa˜o em questa˜o devemos usar \right. (com um ponto final), a qual corresponde a uma “direita vazia”. Uma forma alternativa ao uso dos cifro˜es duplos consiste no uso do ambiente equation, que possui a vantagem de que e´ feita uma numerac¸a˜o automa´tica. Podemos ainda dar um nome a` equac¸a˜o, com o comando \label{}. Assim, sempre que nos referirmos a essa equac¸a˜o, o LATEX colocara´ a numerac¸a˜o correta. Para isso, contudo, e´ preciso compilar o texto duas vezes. Considere o exemplo a seguir \begin{equation} \label{dic} y_{ij} = \mu + \tau_i + e_{(i)j},\quad\quad i = 1,2, \ldots t,\quad j = 1,2,\ldots r \end{equation} A equac¸~ao \ref{dic} corresponde ao modelo estatı´stico de um delineamento inteiramente ao acaso. que gera: yij = µ+ τi + e(i)j, i = 1, 2, . . . t, j = 1, 2, . . . r (1) A equac¸a˜o 1 corresponde ao modelo estat´ıstico de um delineamento inteiramente ao acaso. Aproveitando este exemplo, aqui apareceram os comandos \quad, que gera um espac¸o em branco, e o comando \ldots, que gera pontinhos na linha. Se desejamos inserir um texto dentro de uma equac¸a˜o, isto e´ facilmente obtido com o comando \text{}. Veja: 6 Na Infere^ncia Estatı´stica, o teorema de Rao-Blackwell permite, a partir de um estimador $\hat{\theta}_1$ n~ao viesado, obter um novo estimador $\hat{theta}_2$, com varia^ncia n~ao maior que a de $\hat{\theta}_1$: $$ V(\hat{theta}_2) \leq V(\hat{theta}_1), \quad\text{para todo } \theta\in\Theta $$ que gera: Na Infereˆncia Estat´ıstica, o teorema de Rao-Blackwell permite, a partir de um esti- mador θˆ1 na˜o viesado, obter um novo estimador θˆ2, com variaˆncia na˜o maior que a de θˆ1: V (θˆ2) ≤ V (θˆ1), para todo θ ∈ Θ O ambiente array e´ muito u´til se desejamos editar uma matriz ou uma fo´rmula de combinac¸a˜o. Dentro dele, os elementos dentro de cada linha sa˜o separados pelo carac- tere &, enquanto que as linhas sa˜o separadas por \\. Veremos adiante que esta mesma codificac¸a˜o e´ utilizada dentro de tabelas. Como exemplo, considere: A matriz $X$ abaixo conte´m observac¸~oes de $p$ varia´veis avaliadas em $n$ indivı´duos: $$X = \left[ \begin{array}{cccc} x_{11} & x_{12} & \cdots & x_{1p} \\ x_{21} & x_{22} & \cdots & x_{2p} \\ \vdots & \vdots & & \vdots \\ x_{n1} & x_{n2} & \cdots & x_{np} \end{array} \right]$$ que gera: A matriz X abaixo conte´m observac¸o˜es de p varia´veis avaliadas em n indiv´ıduos: X = x11 x12 · · · x1p x21 x22 · · · x2p ... ... ... xn1 xn2 · · · xnp As chaves {cccc} em \begin{array}{cccc} indicam que dentro do array temos 4 elementos por linha, todos centralizados. Podemos utilizar as letras l ou r, ao inve´s de c, para indicarmos alinhamento a` esquerda ou a` direita. Esta e´ a mesma sintaxe utilizada em tabelas. Aproveitamos este exemplo tambe´m para apresentar os comandos \cdots e \vdots, que geram pontinhos centralizados na linha, e pontinhos verticais, respectivamente. Tambe´m podemos usar o mesmo ambiente array para uma fo´rmula contendo com- binac¸a˜o: 7 \begin{equation} \label{bin} P(X=x) = \left(\begin{array}{c} n \\ x \end{array}\right) p^x (1-p)^{n-x} \end{equation} A equac¸~ao \ref{bin} e´ a func¸~ao de probabilidade de uma distribuic¸~ao binomial. cuja sa´ıda e´: P (X = x) = (n x ) px(1− p)n−x (2) A equac¸a˜o 2 e´ a func¸a˜o de probabilidade de uma distribuic¸a˜o binomial. Estes sa˜o alguns dos recursos mais elementares de edic¸a˜o matema´tica no LATEX. Va´rios outros recursos sa˜o dispon´ıveis, muitos dos quais podem ser consultados em manuais, como no livro LATEX Tutorials. 4 Tabelas E´ muito frequente a necessidade de edic¸a˜o de tabelas quando compomos um texto. No LATEX elas sa˜o constru´ıdas utilizando o ambiente tabular. Como ja´ vimos o ambiente array, na˜o e´ dif´ıcil entender o co´digo abaixo: \begin{tabular}{lcc} \hline Estilo & Ouvinte & N~ao-Ouvinte \\ \hline Sertanejo & 24 & 18 \\ Antigas & 22 & 15 \\ MPB & 20 & 19 \\ Rock & 12 & 25 \\ Outros & 10 & 21 \\ \hline Totais & 88 & 98 \\ \hline \end{tabular} cuja sa´ıda e´: Estilo Ouvinte Na˜o-Ouvinte Sertanejo 24 18 Antigas 22 15 MPB 20 19 Rock 12 25 Outros 10 21 Totais 88 98 8 Podemos centralizar a tabela utilizando o ambiente center. Ale´m disso, se desejamos que a tabela tenha um t´ıtulo e uma numerac¸a˜o (automa´tica), podemos utilizar o ambiente table. Considere o co´digo a seguir (e´ preciso compilar duas vezes para que a numerac¸a˜o das tabelas sejam registradas): \begin{table}[h] \caption{Freque^ncia absoluta observada em uma pesquisa sobre o estilo musical preferido.}\label{tab1} \begin{center} \begin{tabular}{lcc} \hline Estilo & Ouvinte & N~ao-Ouvinte \\ \hline Sertanejo & 24 & 18 \\ Antigas & 22 & 15 \\ MPB & 20 & 19 \\ Rock & 12 & 25 \\ Outros & 10 & 21 \\ \hline Totais & 88 & 98 \\ \hline \end{tabular} \end{center} \end{table} cuja sa´ıda e´: Tabela 1: Frequeˆncia absoluta observada em uma pesquisa sobre o estilo musical preferido. Estilo Ouvinte Na˜o-Ouvinte Sertanejo 24 18 Antigas 22 15 MPB 20 19 Rock 12 25 Outros 10 21 Totais 88 98 A tabela 1 se refere aos resultados de uma pesquisa feita por uma Empresa Ju´nior. Nesta tabela apareceu o comando \hline, que nada mais faz que gerar uma linha horizontal. Um recurso muito utilizado na confecc¸a˜o de tabelas e´ a fusa˜o de colunas em deter- minadas linhas. Isto pode ser obtido pelo comando \multicolumn{}{}{}. Na primeira chave identificamos o nu´mero de colunas fundidas, na segunda chave o alinhamento (c, l ou r), e finalmente na u´ltima chave o conteu´do de texto. Veja o exemplo a seguir. \begin{table}[h] \caption{Freque^ncia absoluta observada em uma pesquisa sobre o 9 estilo musical preferido.}\label{tab2} \begin{center} \begin{tabular}{lcc} \hline & \multicolumn{2}{c}{Ra´dio Minassom FM} \\ Estilo & Ouvinte & N~ao-Ouvinte \\ \hline Sertanejo & 24 & 18 \\ Antigas & 22 & 15 \\ MPB & 20 & 19 \\ Rock & 12 & 25 \\ Outros & 10 & 21 \\ \hline Totais & 88 & 98 \\ \hline \end{tabular} \end{center} \end{table} cuja sa´ıda e´: Tabela 2: Frequeˆncia absoluta observada em uma pesquisa sobre o estilo musical preferido. Ra´dio Minassom FM Estilo Ouvinte Na˜o-Ouvinte Sertanejo 24 18 Antigas 22 15 MPB 20 19 Rock 12 25 Outros 10 21 Totais 88 98 5 Figuras A inserc¸a˜o de figuras no LATEX e´ feita pelo comando \includegraphics[scale=]{}. Dentro das chaves especificamos o nome do arquivo (por exemplo, em formato .pdf, .jpg ou .png), e na opc¸a˜o scale= podemos configurar o tamanho da figura. Este comando pode estar dentro do ambiente figure, o que faz com que a figura seja numerada automaticamente, podendo ser referenciada dentro do texto, utilizando o \label{}. Com o co´digo: \begin{figure}[h] \caption{William Sealy Gosset (\lq\lq Student\rq\rq) em 1908.}\label{fig1} \begin{center} 10 \includegraphics[scale=3.5]{240px-William_Sealy_Gosset.jpg} \end{center} \end{figure} A figura \ref{fig1} retrata Student por ocasi~ao da publicac¸~ao da distribuic¸~ao $t$, na revista \textit{Biometrika}. geramos a inclusa˜o da figura a seguir: Figura 1: William Sealy Gosset (“Student”) em 1908. A figura 1 retrata Student por ocasia˜o da publicac¸a˜o da distribuic¸a˜o t, na revista Biometrika. 11
Compartilhar