私は大学のプロジェクトをまとめているところです。左の列にファインマン図 (feynmp パッケージを使用して描画したもの) を、右の列に方程式を記入した表を作成したいと考えています。しかし、これを行うと、方程式がセルの下部に垂直に揃えられてしまいます。これを変更して、同じ行の図の中央に揃える方法がわかりません。
ここに、レポート全体を書き出さずに問題を説明できるサンプル コードをいくつか示します。
\begin{table*}[t]
\centering
\begin{tabular}{|c|c|}
\hline
\textbf{feynmp diagram goes here}
&
$\begin{aligned} I &= \\ &\frac{D}{4} \end{aligned}$
\\
\hline
\end{tabular}
\end{table*}
答え1
表形式のオプションを使用できますm{width}
:
\documentclass{article}
\usepackage{array}
\usepackage{amsmath}
\begin{document}
\begin{table*}[t]
\centering
\begin{tabular}{|c|m{5cm}|}
\hline
\textbf{feynmp diagram goes here} \newline
&
$\begin{aligned} I &= \\ &\frac{D}{4} \end{aligned}$
\\
\hline
\end{tabular}
\end{table*}
\end{document}
答え2
c
セルの幅を指定せずに、単純な方法でセルを保持できます\raisebox[-\height}
(必要に応じて視覚的な修正も追加します)。cellspace
パッケージを使用して垂直方向のパディングを追加しました。
\documentclass{article}
\usepackage{graphicx}
\usepackage{array}
\usepackage{amsmath}
\usepackage{cellspace}
\setlength\cellspacetoplimit{6pt}
\setlength\cellspacebottomlimit{6pt}
\begin{document}
\begin{table*}[t]
\centering
\begin{tabular}{|Sc|c|}
\hline
\raisebox{\dimexpr-0.5\height+1ex\relax }{\fbox{\includegraphics[scale = 0.4]{Feynmann}}}
& $ \begin{aligned} I & = \\\hline &\frac{D}{4} \end{aligned}$ \\
\hline
\end{tabular}
\end{table*}
\end{document}
答え3
使用することもできますtikz-feynman
(プロジェクトページ)。特に、inline
ダイアグラムのベースラインを調整するオプションがあります(baseline
Tiで機能するのと同じ方法です)。けZ) また、図を少し小さくして、方程式、またはこの場合は表にうまく収まるようにします。
\documentclass{article}
\usepackage[compat=1.1.0]{tikz-feynman}
\usepackage{booktabs}
\begin{document}
\begin{tabular}{cc}
\toprule
\multicolumn{2}{c}{\textbf{Feynman Rules}} \\
\midrule
\feynmandiagram[inline=(a), horizontal=i1 to a] {
i1 [particle=\(A_{\mu}\)] -- [photon] a -- [fermion] f1,
a -- [anti fermion] f2,
}; &
\(\displaystyle ig \gamma_{\mu}\) \\
\feynmandiagram[inline=(a), horizontal=i1 to a] {
i1 [particle=\(W^{\pm}_{\mu}\)]-- [photon] a -- [fermion] f1,
a -- [anti fermion] f2,
}; &
\(\displaystyle \frac{ig}{\sqrt{2}} \gamma_{\mu} \frac{1 - \gamma_{5}}{2}\) \\
\bottomrule
\end{tabular}
\end{document}
答え4
すでにあなたのクロスポストに書いたようにLaTeXコミュニティ.org、この例でコードを使用して示されているように、adjustbox
パッケージまたはパッケージを使用できます。したがって、固定幅を必要とする m 列は必要ありません。stackengine
\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{amsmath}
\usepackage{stackengine}
\begin{document}
\begin{table*}[t]
\centering
\begin{tabular}{|c|c|}
\hline
\Centerstack{\includegraphics{diagram}}
&
$\begin{aligned} I &= \\
&\frac{D}{4} \end{aligned}$\\
\hline
\end{tabular}
\end{table*}
\end{document}
次のようにして上揃えに変更することもできます。
\belowbaseline[0pt]{\includegraphics{diagram}}
&
\belowbaseline[0pt]{$\begin{aligned} I &= \\
&\frac{D}{4} \end{aligned}$}\\
図の下部には垂直配置のベースラインがあります。数式環境のベースラインはaligned
中央にあります(ただし、上または下のラインに変更することができます)。表では、ベースラインは互いに並んで配置されています。そのため、図がベースラインより上に上がっているのがわかりますが、ベースラインの数式テキストは低いままです。これはベースラインの配置であり、上揃えではありません。私が行ったように、ベースラインより下に伸びるように変更すると、上揃えになります。LaTeX フォーラム投稿参考またはさらなる議論のため。