Mesa central ou tikzpicture ignorando horizontalmente as margens

Mesa central ou tikzpicture ignorando horizontalmente as margens

Como posso centralizar uma tabela ou, no meu caso, uma imagem tikz horizontalmente, ignorando as margens? Minha imagem tikz é um pouco grande demais, fazendo com que não fique centralizada corretamente (gruda um pouco demais na margem direita, mas se centralizada corretamente, será menor)

eu tentei

 \makebox[\textwidth][c]{}

mas recebo um monte de erros.

Responder1

Adicione ampersand replacement=\&às tikzpictureopções e altere cada um para &( consulte a seçãotikzpicture\&17.5 Considerações sobre Personagens Ativosdo pgfmanual):

\documentclass{article}
\usepackage{lipsum}
\usepackage{tikz}
\usetikzlibrary{matrix}

\begin{document}

\lipsum[2]

\noindent\makebox[\textwidth]{%
\begin{tikzpicture}[ampersand replacement=\&]
\matrix [matrix of nodes]
{
8 \& 1 \& 6 \& 8 \& 1 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \\
};
\end{tikzpicture}%
}

\end{document} 

insira a descrição da imagem aqui

Se você quiser ter uma legenda, você pode usar a minipagee o \captionofcomando dos pacotes captionou capt-of(você não pode usar um float dentro de a \makebox):

\documentclass{article}
\usepackage{caption}
\usepackage{tikz}
\usetikzlibrary{matrix}
\usepackage{lipsum}

\begin{document}

\lipsum[2]

\noindent\makebox[\textwidth]{%
\begin{minipage}{2\textwidth}
\centering
\begin{tikzpicture}[ampersand replacement=\&]
\matrix [matrix of nodes]
{
8 \& 1 \& 6 \& 8 \& 1 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \& 6 \& 8 \& 1 \& 6 \\
};
\end{tikzpicture}
\captionof{figure}{Test caption}
\end{minipage}%
}

\end{document} 

insira a descrição da imagem aqui

informação relacionada