longtable、math column、rowcolor、arraystretch に関する問題

longtable、math column、rowcolor、arraystretch に関する問題

longtable交互に 2 つの数式列がある がありますrowcolor。行のコンテンツが 1 行で、行のコンテンツの上と下にパディングがある場合、行色は意図したとおりに機能します。一部のエントリは両方の列に有効であるため、中央にあります。しかし、全体として、テーブルはかなり見苦しいです :(

ここに画像の説明を入力してください

しかし、コンテンツが複数行にまたがる場合、または積分記号がある場合は、行の色がコンテンツに接し、パディングはありません。増やしてみましたがarraystretch(すでに 2 で違いはありません)、役に立ちませんでした。また、makecellいくつかの回答で提案されているパッケージも試しましたが、うまくいきませんでしたextrarowheight。試したもう 1 つの方法は、各行の改行後に手動でスペースを追加することです\\[5pt]が、これでは、次の色の行とその変数に接する下部の部分の問題のみが解決されます。場合によっては、見栄えを良くするために 8pt または 10pt を追加する必要がありました。当然のことながら、行の後にスペースを追加しても、コンテンツの上部は影響を受けません。

何ができるか提案してください。 の代わりとなるパッケージやlongtable、テーブルをより良くするための一般的なヒントがあれば、ぜひ教えてください。 特定の列のすべてのエントリを揃えることができれば、さらに良いでしょう。

ムウェ

\documentclass[twoside]{book}
\usepackage{geometry}               
\geometry{paperwidth=205mm, paperheight=236mm, top=15mm,bottom=20mm, textheight=196mm, headsep=5mm, left=15mm, right=85mm, textwidth=95mm, marginpar=70mm,marginparsep=5mm}                   

\usepackage{amsmath}

\usepackage{fouriernc}
\usepackage{physics}

\usepackage{longtable}
\usepackage{booktabs}

\usepackage[table,svgnames]{xcolor}

\usepackage{multicol}
\newcommand{\tbb}[1]{\textcolor{DarkSlateBlue}{{\textbf{#1}}}}

\newcolumntype{M}{>{$}p{4cm}<{$}}  %  math mode column

\begin{document}



\newgeometry{margin=15mm,inner=15mm,outer=15mm,marginparwidth=0cm,marginparsep=0mm}
%invoked newgeometry to fit the table in the given space, otherwise in the twoside mode the table runs into margin for even pages

{\everymath{\displaystyle}
\setlength{\tabcolsep}{8pt}
\renewcommand{\arraystretch}{2}

\rowcolors{3}{white}{DarkSlateBlue!30}
\begin{longtable}{p{5cm}MM}
\toprule
\tbb{Relation} & \tbb{\text{SI}} & \tbb{\text{Gaussian System}} \\

\midrule
Relation between $\vb{D}$ and $\vb{E}$ & \vb{D} = \varepsilon \varepsilon_{0} \vb{E} & \vb{D} = \varepsilon  \vb{E} \\
Gauss theorem for vector $\vb{D}$  & \oint \vb{D} \, \dd \vb{S} = q & \oint \vb{D} \, \dd \vb{S} = 4 \pi q\\
Capacitance of a capacitor  & \multicolumn{2}{c}{ $C = \frac{q}{U}$}  \\
Capacitance of a parallel-plate capacitor  & C = \frac{\varepsilon \varepsilon_{0}S}{h}& C = \frac{\varepsilon S}{4 \pi h} \\
Energy of system of charges  & \multicolumn{2}{c}{ $W = \frac{1}{2} \sum q_{i} \varphi_{i} $} \\
Total energy of interaction  & \multicolumn{2}{c}{ $W = \frac{1}{2} \int \rho \, \varphi \, \dd V $} \\
Energy of capacitor   & \multicolumn{2}{c}{ $W = \frac{qU}{2} = \frac{CU^{2}}{2} = \frac{q^{2}}{2C} $} \\
Electric field energy density & w = \frac{\vb{E}\vdot \vb{D}}{2} & w = \frac{\vb{E}\vdot \vb{D}}{8 \pi}\\
\bottomrule
\end{longtable}
}

\clearpage
\restoregeometry


\end{document}

答え1

\documentclass{book}
\usepackage[margin=15mm]{geometry}
\usepackage{physics}
\usepackage[svgnames]{xcolor}
\usepackage{tabularray}
\begin{document}
\begin{longtblr}
[
caption          = {title},
label            = {key},
]
{
colspec          = {X[1.5,l,m]X[l,m]X[l,m]},
hline{1,Z}       = {wd=.08em},
hline{2}         = {wd=.05em},
row{1}           = {font=\bfseries,fg=DarkSlateBlue},
cell{4,6,7,8}{2} = {c=2}{halign=c},
row{even[2-Z]}   = {bg=DarkSlateBlue!30},
cell{2-Z}{2-Z}   = {mode=dmath},
}
Relation                                  & SI                                               & Gaussian System                  \\
Relation between $\vb{D}$ and $\vb{E}$    & \vb{D}=\varepsilon\varepsilon_{0}\vb{E}          & \vb{D}=\varepsilon\vb{E}         \\
Gauss theorem for vector $\vb{D}$         & \oint\vb{D}\,\dd\vb{S}=q                         & \oint \vb{D}\,\dd\vb{S}=4\pi q   \\
Capacitance of a capacitor                & C=\frac{q}{U}                                    &                                  \\
Capacitance of a parallel-plate capacitor & C=\frac{\varepsilon \varepsilon_{0}S}{h}         & C=\frac{\varepsilon S}{4\pi h}   \\
Energy of system of charges               & W=\frac{1}{2}\sum q_{i}\varphi_{i}               &                                  \\
Total energy of interaction               & W=\frac{1}{2}\int\rho\,\varphi\,\dd V            &                                  \\
Energy of capacitor                       & W=\frac{qU}{2}=\frac{CU^{2}}{2}=\frac{q^{2}}{2C} &                                  \\
Electric field energy density             & w=\frac{\vb{E}\vdot\vb{D}}{2}                    & w=\frac{\vb{E}\vdot\vb{D}}{8\pi} \\
\end{longtblr}
\clearpage
\restoregeometry
\end{document}

ここに画像の説明を入力してください

答え2

素晴らしい Clara の回答を補足するために、テーブル レイアウトを少し変更しました。

  • テーブルに新しいジオメトリは不要です。テーブルは既存のテーブル レイアウトにうまく収まります。
  • より大きいrowsep
  • 2列のセルを「中央揃え」する別の方法
\documentclass[twoside]{book}
\usepackage{geometry}   % set desired page layout
\usepackage{physics}
\usepackage[svgnames]{xcolor}
\usepackage{tabularray}
\UseTblrLibrary{booktabs}

\usepackage{lipsum}

\begin{document}
\lipsum[1]
\clearpage

\begin{longtblr}[
caption = {title},
  label = {key}]{colspec = {Q[l] X[l,mode=dmath] X[l,mode=dmath]},
                column{2} = {colsep = 2em}, % <---
                 rowsep  = 5pt,              % <---
                 row{1}  = {font=\bfseries, mode=text},
                 cell{4,6,7,8}{2} = {c=2}{preto=\hspace{8em},l}, % <---
                    row{even[2]}  = {bg=DarkSlateBlue!30},
                 }
    \toprule
Relation                                  
    & SI                                               
        & Gaussian System                       \\
    \midrule
Relation between $\vb{D}$ and $\vb{E}$    
    & \vb{D}=\varepsilon\varepsilon_{0}\vb{E}          
        & \vb{D}=\varepsilon\vb{E}              \\
Gauss theorem for vector $\vb{D}$         
    & \oint\vb{D}\,\dd\vb{S}=q                         
        & \oint \vb{D}\,\dd\vb{S}=4\pi q        \\
Capacitance of a capacitor                
    & C=\frac{q}{U}                                    
        &                                       \\
Capacitance of a parallel-plate capacitor 
    & C=\frac{\varepsilon_{r} \varepsilon_{0}S}{h}         
        & C=\frac{\varepsilon S}{4\pi h}        \\
Energy of system of charges               
    & W=\frac{1}{2}\sum q_{i}\varphi_{i}               
        &                                       \\
Total energy of interaction               
    & W=\frac{1}{2}\int\rho\,\varphi\,\dd V            
        &                                       \\
Energy of capacitor                       
    & W=\frac{qU}{2}=\frac{CU^{2}}{2}=\frac{q^{2}}{2C} 
        &                                       \\
Electric field energy density             
    & w=\frac{\vb{E}\vdot\vb{D}}{2}                    
        & w=\frac{\vb{E}\vdot\vb{D}}{8\pi}      \\
    \bottomrule
\end{longtblr}
\end{document}

ここに画像の説明を入力してください

答え3

追加のスペースlongtableをベースとしたソリューション。cellspace

LaTeX のデフォルトの動作にいくつか修正を加えました。まず、目に見えない罫線を追加して最初の行を拡張しました。次に、最後の行の 1 つ前の行で、式を と で囲むことで、分数の上付き文字によって占有されるスペースを削減しまし\cramped\smash

\documentclass[twoside]{book}
\usepackage{geometry}               
\usepackage{mathtools}   % Required by \cramped{}
\usepackage{longtable}
\usepackage{booktabs}
\usepackage[column=E]{cellspace}
\usepackage[table,svgnames]{xcolor}
\usepackage{fouriernc}
\usepackage{physics}

\setlength\cellspacetoplimit{3pt}
\setlength\cellspacebottomlimit{3pt}

\newcommand{\tbb}[1]{\textcolor{DarkSlateBlue}{{\textbf{#1}}}}
\newcolumntype{M}{>{$}E{l}<{$}}  %  math mode column
\newcolumntype{L}{E{l}}
\newcommand\dstrut[1][1]{%
  \rule[-0.5\dimexpr#1\normalbaselineskip-1ex]{0pt}{#1\dimexpr\normalbaselineskip}}


\begin{document}
\begingroup
\centering
\everymath{\displaystyle}
\setlength{\tabcolsep}{8pt}
\rowcolors{3}{white}{DarkSlateBlue!30}
\begin{longtable}{LMM}
  \toprule
  \multicolumn{1}{l}{\tbb{Relation}}        & \multicolumn{1}{l}{\tbb{\text{SI}}}         & \multicolumn{1}{l}{\tbb{\text{Gaussian System}}} \\
  \specialrule{\lightrulewidth}{3pt}{0pt}
  \dstrut[1.5]%
  Relation between $\vb{D}$ and $\vb{E}$    & \vb{D} = \varepsilon \varepsilon_{0} \vb{E} & \vb{D} = \varepsilon  \vb{E} \\
  Gauss theorem for vector $\vb{D}$         & \oint \vb{D} \, \dd \vb{S} = q              & \oint \vb{D} \, \dd \vb{S} = 4 \pi q \\
  Capacitance of a capacitor                & \multicolumn{2}{E{c}}{$C = \frac{q}{U}$} \\
  Capacitance of a parallel-plate capacitor & C = \frac{\varepsilon \varepsilon_{0}S}{h}  & C = \frac{\varepsilon S}{4 \pi h} \\
  Energy of system of charges               & \multicolumn{2}{E{c}}{$W = \frac{1}{2} \sum q_{i} \varphi_{i} $} \\
  Total energy of interaction               & \multicolumn{2}{E{c}}{$W = \frac{1}{2} \int \rho \, \varphi \, \dd V $} \\
  Energy of capacitor                       & \multicolumn{2}{E{c}}{$W = \frac{qU}{2} = \smash{\cramped{\frac{CU^{2}}{2} = \frac{q^{2}}{2C}}}$} \\
  Electric field energy density             & w = \frac{\vb{E}\vdot \vb{D}}{2}            & w = \frac{\vb{E}\vdot \vb{D}}{8 \pi}\\
\specialrule{\heavyrulewidth}{0pt}{0pt}
\end{longtable}\par
\endgroup
\end{document}

ここに画像の説明を入力してください

答え4

のと。{NiceTabular}nicematrix

\documentclass{book}
\usepackage[margin=15mm]{geometry}
\usepackage{physics}
\usepackage[svgnames]{xcolor}

\usepackage{nicematrix}
\usepackage{booktabs}

\begin{document}


\everymath{\displaystyle}
\begin{NiceTabular}{X[3,l]X[2,l]X[2,l]}[cell-space-limits=3pt]
\CodeBefore
 \rowcolors{2}{}{DarkSlateBlue!30}
\Body
   \toprule
   \RowStyle[bold,color=DarkSlateBlue]{}
   Relation                                  & SI                                               & Gaussian System
   \\
   \midrule
   Relation between $\vb{D}$ and $\vb{E}$    & $\vb{D}=\varepsilon\varepsilon_{0}\vb{E}$          & $\vb{D}=\varepsilon\vb{E}$         \\
   Gauss theorem for vector $\vb{D}$         & $\oint\vb{D}\,\dd\vb{S}=q$                         & $\oint \vb{D}\,\dd\vb{S}=4\pi q$   \\
   Capacitance of a capacitor                & \Block{1-2}{$C=\frac{q}{U}$} \\
   Capacitance of a parallel-plate capacitor & $C=\frac{\varepsilon \varepsilon_{0}S}{h}$         & $C=\frac{\varepsilon S}{4\pi h}$   \\
   Energy of system of charges               & \Block{1-2}{$W=\frac{1}{2}\sum q_{i}\varphi_{i}$} \\
   Total energy of interaction               & \Block{1-2}{$W=\frac{1}{2}\int\rho\,\varphi\,\dd V$} \\         
   Energy of capacitor                       & \Block{1-2}{$W=\frac{qU}{2}=\frac{CU^{2}}{2}=\frac{q^{2}}{2C}$} \\
   Electric field energy density             & $w=\frac{\vb{E}\vdot\vb{D}}{2}$                    &
   $w=\frac{\vb{E}\vdot\vb{D}}{8\pi}$ \\
   \bottomrule
\end{NiceTabular}

\end{document}

複数のコンパイルが必要です (nicematrix内部で PGF/Tikz ノードが使用されるため)。

上記コードの出力

関連情報