
Estou escrevendo um relatório técnico relacionado ao processamento de texto e gostaria de usar uma figura para ilustrar algo como o mostrado na figura 1 abaixo.
Então, basicamente, é apenas uma figura com texto. Como não quero manter a "aparência de látex" em todo o documento, prefiro não fazê-lo como fiz neste exemplo (por exemplo, usando o bloco de notas).
Lamento não fornecer um exemplo prático mínimo, mas não consegui descobrir o que procurar além de, por exemplo, "figuras de látex com texto". Isso resulta apenas em descrições sobre como criar legendas de figuras.
Então, basicamente, o que estou pedindo é orientação sobre como fazer isso ou o que procurar.
Além disso, se alguém souber se esta é uma maneira adequada de ilustrar o que estou tentando fazer (como você vê na figura de exemplo) quando se trata de relatórios acadêmicos, agradeceria sua opinião. Presumo que isso seria preferível em vez de apenas escrever as listas de strings e números inteiros (como neste exemplo) em texto bruto.
Responder1
A solução a seguir combina vários "truques":
Primeiro, todos os trechos de código estão dentro de um figure
ambiente. Isso permite que você use uma legenda. O último dirá algo:Figura 1. Conteúdo da legenda(Figuraporque a legenda foi definida em um... figure
ambiente!).
Depois, utilizamos subfigure
ambientes para colocar vários elementos lado a lado. Usar o pacote subcaption
permite definir um \caption
dentro de cada subfigure
ambiente e assim adicionar... uma sublegenda.
Por último, utiliza-se o listings
pacote para exibir código em lstlisting
ambientes. Cuidado: como o código é impresso literalmente, você deve "redefinir" o recuo dentro lstlisting
dos ambientes. Centralizar trechos de código não é trivial. Para isso fazemos um desvio, incluímos lstlisting
dentro de one-cell tabular
, conforme explicado emComo centralizar uma listagem?.
\documentclass{article}
\usepackage{subcaption}
\usepackage{listings}
\lstset{basicstyle=\ttfamily}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{figure}[htb]
\centering
\begin{subfigure}[t]{.5\linewidth}
\centering
\begin{tabular}{c}
% Don't indent the lstlisting environment!
\begin{lstlisting}
[
'foo',
'bar',
'baz',
]
\end{lstlisting}
\end{tabular}
\caption{Simply words}
\end{subfigure}%
\begin{subfigure}[t]{.5\linewidth}
\centering
\begin{tabular}{c}
\begin{lstlisting}
[
3,
2,
1,
]
\end{lstlisting}
\end{tabular}
\caption{And numbers here}
\end{subfigure}
\caption{Very code. Much geek. Wow!}
\end{figure}
\lipsum[2]
\end{document}