图形和表格的垂直对齐

图形和表格的垂直对齐

这里有很多相关问题。但我还无法解决这个问题。

我有以下代码:(其中hist.tex是绘图)

\fbox{\scalebox{0.40} {\input{hist.tex}}}
\quad
\begin{tabular}{ll}
    p: 78\%&\\\\
    $\mu$: -7\% & $\sigma$: 7\%\\
    $\alpha$: 0.43 & N: 11977
\end{tabular}

输出:

射击
(来源:上页

我希望它们能够对齐!!

答案1

无论你是想让两个对象都对齐在顶部还是底部,你都可以使用两个minipage环境并应用\vspace{0pt}诡计以获得所需的垂直对齐(TeX/LaTeX 的怪癖)。

也可以看看理解小页面 - 顶部对齐更多细节。

minipage将两个环境的可选参数设置为

  • t对于顶部对齐,
  • b用于底部对齐。

注意:我使用tikzpicture环境作为图表的占位符,因为您没有提供相关代码。

在此处输入图片描述

\documentclass{article}

\usepackage[demo]{graphicx}
\usepackage{tikz}

\begin{document}

\begin{minipage}[t]{.5\textwidth}
\vspace{0pt}
\raggedleft
    \begin{tikzpicture}
        \filldraw[draw=red,fill=red!20] rectangle (3,3);
    \end{tikzpicture}
\vspace{0pt}
\end{minipage}
\begin{minipage}[t]{.5\textwidth}
\vspace{0pt}
\raggedright
    \begin{tabular}{ll}
            p: 78\%&\\\\
            $\mu$: -7\% & $\sigma$: 7\%\\
            $\alpha$: 0.43 & N: 11977
    \end{tabular}
\vspace{0pt}
\end{minipage}  

\end{document}

答案2

您可以使用该包完成所有工作,而无需设置任何长度。只需用您的图adjustbox更改模拟即可。tikzpicture

\documentclass{article}

\usepackage{tikz}
\usepackage{adjustbox}

\begin{document}

\section{Centered alignment}

\begin{adjustbox}{valign=c}
\begin{tikzpicture}
  \filldraw[draw=red,fill=red!20] rectangle (3,3);
\end{tikzpicture}
\end{adjustbox}
\begin{tabular}{ll}
  p: 78\%&\\[2ex]
  $\mu$: -7\% & $\sigma$: 7\%\\
  $\alpha$: 0.43 & N: 11977
\end{tabular}

\section{Top alignment}

\begin{adjustbox}{valign=t}
\begin{tikzpicture}
  \filldraw[draw=red,fill=red!20] rectangle (3,3);
\end{tikzpicture}
\end{adjustbox}
\begin{tabular}[t]{ll}
  p: 78\%&\\[2ex]
  $\mu$: -7\% & $\sigma$: 7\%\\
  $\alpha$: 0.43 & N: 11977
\end{tabular}

\section{Bottom alignment}

%\begin{adjustbox}{valign=b} % adjustbox not really needed
\begin{tikzpicture}
  \filldraw[draw=red,fill=red!20] rectangle (3,3);
\end{tikzpicture}
%\end{adjustbox}
\begin{tabular}[b]{ll}
  p: 78\%&\\[2ex]
  $\mu$: -7\% & $\sigma$: 7\%\\
  $\alpha$: 0.43 & N: 11977
\end{tabular}

\end{document}

在此处输入图片描述

答案3

根据您想要顶部对齐还是居中对齐(或底部对齐),您可以为图像添加不同量的垂直移动。对于我的示例,将图像顶部相\baselineskip对于基线向上移动 2 和 3 就足够了(即,负基线以下 = 相对于图像顶部向上)。您的里程可能会有所不同。

\documentclass{article}
\usepackage{graphicx}
\usepackage{stackengine}
\parskip 1em
\begin{document}
\def\x{\fbox{\scalebox{0.40} {\rule{2in}{2in}}}}
\def\y{%
\begin{tabular}{ll}
    p: 78\%&\\
\\
    $\mu$: -7\% & $\sigma$: 7\%\\
    $\alpha$: 0.43 & N: 11977
\end{tabular}}
\belowbaseline[-2\baselineskip]{\x}\quad\y \par
\belowbaseline[-3\baselineskip]{\x}\quad\y
\end{document}

在此处输入图片描述

请注意,如果您需要“精确”的顶部对齐,可以使用

\belowbaseline[-\ht\strutbox]{\x}\quad\belowbaseline[-\ht\strutbox]{\y}

相关内容