表のプリアンブルですでに中央揃えになっている列を中央揃えにするにはどうすればよいでしょうか?

表のプリアンブルですでに中央揃えになっている列を中央揃えにするにはどうすればよいでしょうか?

6 列、2 行の見出しがある表を作成しています。主見出しが 3 つ、サブ見出しが 6 つあります。すべての列はc入力されていますが、列 3 と 4 が正しく中央揃えされていません。何か助けはありますか?

\documentclass[12pt,a4paper]{article}
\usepackage{multirow} 
\usepackage{multicol}
\usepackage{booktabs}
\usepackage[
    font=footnotesize,
    justification=centering,
    figurewithin=section,
    tablewithin=section
]{caption}
\usepackage{siunitx}
\usepackage{chemformula}

\begin{document}

\begin{table}[h]
\centering
\footnotesize
\caption{My caption}
\label{my-label}
\begin{tabular}{cccccc}
\toprule
\multicolumn{2}{c}{\textbf{Time (\si{min})}} &%
\multicolumn{2}{c}{\textbf{Water + \ch{CH3COOH} \SI[inter-unit-product=~]{0,15}{\%~v/v}}} &%
\multicolumn{2}{c}{\textbf{Oil}} \\
\midrule
\textbf{Point 1} & \textbf{Point 2} &%
\textbf{Point 1} & \textbf{Point 2} &%
\textbf{Point 1} & \textbf{Point 2} \\
\midrule
0,00    & 0,00  & 100   & 90    & 0     & 10 \\
0,50    & 0,50  & 90    & 70    & 10    & 30 \\
8,50    & 8,00  & 100   & 0     & 0     & 100 \\
13,50   & 8,10  & 100   & 90    & 0     & 10 \\
\bottomrule
\end{tabular}
\end{table}

\end{document}

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

答え1

makecellおよびsに基づくバリアントcmidrule:

\documentclass[12pt,a4paper]{article}
\usepackage{multirow}
\usepackage{multicol}
\usepackage{booktabs}
\usepackage{makecell}
\renewcommand{\theadfont}{\bfseries}
\usepackage[
    font=footnotesize,
    justification=centering,
    figurewithin=section,
    tablewithin=section,
    skip=6pt
]{caption}
\usepackage{siunitx}
\usepackage{chemformula}

\begin{document}

\begin{table}[h]
\centering
\caption{My caption}
\label{my-label}
\begin{tabular}{cccccc}
\toprule
\multicolumn{2}{c}{\thead{Time \\(\si{min})}} &%
\multicolumn{2}{@{}c@{}}{\thead{Water\,$+$\,\ch{CH3COOH}\\ \SI[inter-unit-product=~]{0,15}{\%~v/v}}} &%
\multicolumn{2}{c}{\thead{Oil}} \\
\cmidrule(lr){1-2}\cmidrule(lr){3-4}\cmidrule(lr){5-6}
\textbf{Point 1} & \textbf{Point 2} &%
\textbf{Point 1} & \textbf{Point 2} &%
\textbf{Point 1} & \textbf{Point 2} \\
\cmidrule(lr){1-2}\cmidrule(lr){3-4}\cmidrule(lr){5-6}
0,00 & 0,00 & 100 & 90 & 0 & 10 \\
0,50 & 0,50 & 90 & 70 & 10 & 30 \\
8,50 & 8,00 & 100 & 0 & 0 & 100 \\
13,50 & 8,10 & 100 & 90 & 0 & 10 \\
\bottomrule
\end{tabular}
\end{table}

\end{document} 

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

答え2

使用方法の1つtabularx:

ムウェ

\documentclass[12pt,a4paper]{article}
\usepackage{tabularx} 
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{chemformula}

\begin{document}

\tabcolsep.5em\small
\begin{tabularx}{\linewidth}{cc>{\hfil}X>{\hfil}Xcc}\toprule
\multicolumn{2}{c}{\textbf{Time (\si{min})}} &%
\multicolumn{2}{c}{\textbf{Water + \ch{CH3COOH} \SI[inter-unit-product=~]{0,15}{\%~v/v}}}&%
\multicolumn{2}{c}{\textbf{Oil}} \\
\cmidrule(rl){1-2}\cmidrule(rl){3-4}\cmidrule(rl){5-6}
\textbf{Point 1} & \textbf{Point 2} &%
\textbf{Point 1} & \textbf{Point 2} &%
\textbf{Point 1} & \textbf{Point 2} \\
\cmidrule(rl){1-1}\cmidrule(rl){2-2}\cmidrule(rl){3-3}
\cmidrule(rl){4-4}\cmidrule(rl){5-5}\cmidrule(rl){6-6}
0,00    & 0,00  & 100   & 90    & 0     & 10 \\
0,50    & 0,50  & 90    & 70    & 10    & 30 \\
8,50    & 8,00  & 100   & 0     & 0     & 100 \\
13,50   & 8,10  & 100   & 90    & 0     & 10 \\\bottomrule
\end{tabularx}

\end{document}

しかし、個人的には、ヘッダーを短く変更しAcetic acid \SI{0,15}{\percent}、標準の表形式とc列をそのまま使用します。

ムウェ

答え3

列ヘッダーが 2 行に分割され、 が大きくなったバージョンを次に示します\tabcolsep

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

\documentclass[12pt,a4paper]{article}
\usepackage{multirow} 
\usepackage{multicol}
\usepackage{booktabs}
\usepackage[
    font=footnotesize,
    justification=centering,
    figurewithin=section,
    tablewithin=section
]{caption}
\usepackage{siunitx}
\usepackage{chemformula}
\usepackage{makecell}

\begin{document}

\begin{table}[h]
\centering
\footnotesize
\setlength{\tabcolsep}{15pt}
\caption{My caption}
\label{my-label}
\begin{tabular}{@{\hspace{7pt}}cccccc@{\hspace{7pt}}}
\toprule
\multicolumn{2}{c}{\textbf{Time (\si{min})}} &%
\multicolumn{2}{c}{\textbf{\makecell[cc]{Water  + \ch{CH3COOH} \\ \SI[inter-unit-product=~]{0,15}{\%~v/v}}}} &%
\multicolumn{2}{c}{\textbf{Oil}} \\
\cmidrule(r){1-2} \cmidrule(lr){3-4} \cmidrule(l){5-6}
\textbf{Point 1} & \textbf{Point 2} &%
\textbf{Point 1} & \textbf{Point 2} &%
\textbf{Point 1} & \textbf{Point 2} \\
\midrule
0,00    & 0,00  & 100   & 90    & 0     & 10 \\
0,50    & 0,50  & 90    & 70    & 10    & 30 \\
8,50    & 8,00  & 100   & 0     & 0     & 100 \\
13,50   & 8,10  & 100   & 90    & 0     & 10 \\
\bottomrule
\end{tabular}
\end{table}

\end{document}

関連情報