
などを使用してさまざまな線の太さを取得したいので、 をtabular*
使用して表を生成しようとしています。ただし、以下の試みでは、表のセクションに色を付けようとすると、次のように色にスペースができてしまいます。midrule
bottomrule
私はこれらを見てきました関連ソリューションしかし、まだ希望する結果が得られていないため、ここで使用できるより簡単な解決策があるかどうかを知りたいと思いました。
これが私のコードです:
\documentclass{article}
\usepackage{float}
\usepackage{xcolor,colortbl,tabularx}
\usepackage{bigstrut}
\definecolor{LightGray}{gray}{0.9}
\begin{document}
\begin{table}[H]
\centering
\caption{Not too good looking table here.\label{tab:table1}}
\footnotesize
% Table generated by Excel2LaTeX from sheet 'Sheet2'
\begin{tabularx}{\textwidth}{c @{\extracolsep{\fill}} c|ccc}
%\begin{tabular*}{cc|cc}
%\toprule
\hline
\multicolumn{2}{c|}{\textbf{Test1}} & \multicolumn{2}{c}{\textbf{Test2}} \bigstrut[t]\\
Test11 & Test12 & Test13 & Test14 \bigstrut[b]\\
%\midrule
\hline
FLTR2 & 2 & 40 & FLTR0 \bigstrut[t]\\
FLTR0 & 80 & 80 & FLTR0 \\
\rowcolor[rgb]{ 1, .78, .808} \textcolor[rgb]{ .612, 0, .024}{FLTR0} & \textcolor[rgb]{ .612, 0, .024}{160} & \textcolor[rgb]{ .612, 0, .024}{204} & \textcolor[rgb]{ .612, 0, .024}{FLTR4} \\
FLTR6 & 6 & 44 & FLTR4 \\
\rowcolor[rgb]{ 1, .78, .808} \textcolor[rgb]{ .612, 0, .024}{FLTR16} & \textcolor[rgb]{ .612, 0, .024}{16} & \cellcolor[rgb]{ 1, 1, 1}43 & \cellcolor[rgb]{ 1, 1, 1}FLTR3 \\
FLTR4 & 44 & 6 & FLTR6 \bigstrut[b]\\
\hline
%\bottomrule
\end{tabularx}%
%\end{tabular*}
\end{table}
\end{document}
セルを隙間なく塗りつぶし、同時に などを使用するにはどうすればよいでしょうtoprule
かmidrule
?
答え1
@{\extracolsep{\fill}}
色付けできない列の間に余分なスペースを挿入するの使用は\rowcolor{...}
、tabularx
有望な方法ですが、使用すべきではありません。@{\extracolsep{\fill}}
- 使用時には
tabularx
少なくとも1つの列がタイプである必要がありますX
- すべての列の幅を同じにできる場合、使用するテーブルのコードは次のよう
tabularx
になります。
\documentclass{article}
\usepackage[table]{xcolor}
\usepackage{tabularx}
\newcolumntype{C}{>{\centering\arraybackslash}X}
\begin{document}
\begin{table}[ht]
\centering
\caption{Not too good looking table here.\label{tab:table1}}
\footnotesize
\begin{tabularx}{\textwidth}{CC|CC}
\hline
\multicolumn{2}{c|}{\textbf{Test1}}
& \multicolumn{2}{c}{\textbf{Test2}} \\
Test11 & Test12 & Test13 & Test14 \\
\hline
FLTR2 & 2 & 40 & FLTR0 \\
FLTR0 & 80 & 80 & FLTR0 \\
\rowcolor{red!30}
\textcolor{purple}{FLTR0}
& \textcolor{purple}{160}
& \textcolor{purple}{204}
& \textcolor{purple}{FLTR4} \\
FLTR6 & 6 & 44 & FLTR4 \\
\rowcolor{red!30}
\textcolor{purple}{FLTR16}
& \textcolor{purple}{16}
& \textcolor{purple}{43¸}
& \textcolor{purple}{FLTR3} \\
FLTR4 & 44 & 6 & FLTR6 \\
\hline
\end{tabularx}%
\end{table}
\end{document}
私の意見では、この表には列の内容の間に空きスペースが多すぎます。表の幅を狭くすれば、もっと見やすくなります。
編集:tabularray
およびパッケージ を使用して、1 列目と 2 列目の一部のセルのみを色付けした、幅の狭いテーブルの例ではsiunitx
、MWE は次のようになります。
\documentclass{article}
\usepackage[table]{xcolor}
\usepackage{tabularray}
\UseTblrLibrary{booktabs, siunitx, varwidth}
\NewTableCommand\SCC[2]{\SetCell{bg=#1, fg=#2}}
\begin{document}
\begin{table}[ht]
\centering
\caption{Not too good looking table here.}
\label{tab:table1}
\begin{tblr}{colspec={Q[l] Q[c, si={table-format=3.0}] |
Q[c, si={table-format=3.0}] Q[l] },
row{1} = {font=\bfseries, guard},
row{2} = {guard}
}
\toprule
\SetCell[c=2]{c} Test 1
& & \SetCell[c=2]{c} Test 2
& \\
Test11 & Test12 & Test13 & Test14 \\
\midrule
FLTR2 & 2 & 40 & FLTR0 \\
FLTR0 & 80 & 80 & FLTR0 \\
\SetRow{bg=red!20, fg=purple}
FLTR0 & 160 & 204 & FLTR4 \\
FLTR6 & 6 & 44 & FLTR4 \\
\SCC{red!20}{purple}
FLTR16 & \SCC{red!20}{purple}
16 & 43 & FLTR3 \\
FLTR4 & 44 & 6 & FLTR6 \\
\bottomrule
\end{tblr}%
\end{table}
\end{document}
答え2
これが役に立つかもしれません。質問は大歓迎です
ムウェ
\documentclass{article}
\usepackage{nicematrix}
\usepackage{booktabs}
\usepackage{bigstrut}
\definecolor{LightGray}{gray}{0.9}
\begin{document}
\begin{NiceTabular}{c @{\extracolsep{\fill}} c|ccc}[colortbl-like]
\toprule
\multicolumn{2}{c|}{\textbf{Test1}} & \multicolumn{2}{c}{\textbf{Test2}} \bigstrut[t]\\
Test11 & Test12 & Test13 & Test14 \bigstrut[b]\\
\midrule
FLTR2 & 2 & 40 & FLTR0 \bigstrut[t]\\
FLTR0 & 80 & 80 & FLTR0 \\
\rowcolor[rgb]{ 1, .78, .808} \textcolor[rgb]{ .612, 0, .024}{FLTR0} & \textcolor[rgb]{ .612, 0, .024}{160} & \textcolor[rgb]{ .612, 0, .024}{204} & \textcolor[rgb]{ .612, 0, .024}{FLTR4} \\
FLTR6 & 6 & 44 & FLTR4 \\
\rowcolor[rgb]{ 1, .78, .808} \textcolor[rgb]{ .612, 0, .024}{FLTR16} & \textcolor[rgb]{ .612, 0, .024}{16} & \cellcolor[rgb]{ 1, 1, 1}43 & \cellcolor[rgb]{ 1, 1, 1}FLTR3 \\
FLTR4 & 44 & 6 & FLTR6 \bigstrut[b]\\
\bottomrule
\end{NiceTabular}
\end{document}
テーブルを全体に拡張するには、同様の列text width
を提供しますX columns
tabularx
\documentclass{article}
\usepackage{nicematrix}
\usepackage{booktabs}
\usepackage{bigstrut}
\definecolor{LightGray}{gray}{0.9}
\begin{document}
\begin{NiceTabular}{c X[c]|c X[c]}[colortbl-like]
\toprule
\multicolumn{2}{c|}{\textbf{Test1}} & \multicolumn{2}{c}{\textbf{Test2}} \bigstrut[t]\\
Test11 & Test12 & Test13 & Test14 \bigstrut[b]\\
\midrule
FLTR2 & 2 & 40 & FLTR0 \bigstrut[t]\\
FLTR0 & 80 & 80 & FLTR0 \\
\rowcolor[rgb]{ 1, .78, .808} \textcolor[rgb]{ .612, 0, .024}{FLTR0} & \textcolor[rgb]{ .612, 0, .024}{160} & \textcolor[rgb]{ .612, 0, .024}{204} & \textcolor[rgb]{ .612, 0, .024}{FLTR4} \\
FLTR6 & 6 & 44 & FLTR4 \\
\rowcolor[rgb]{ 1, .78, .808} \textcolor[rgb]{ .612, 0, .024}{FLTR16} & \textcolor[rgb]{ .612, 0, .024}{16} & \cellcolor[rgb]{ 1, 1, 1}43 & \cellcolor[rgb]{ 1, 1, 1}FLTR3 \\
FLTR4 & 44 & 6 & FLTR6 \bigstrut[b]\\
\bottomrule
\end{NiceTabular}
\end{document}
答え3
nicematrix
キー を持つの {tabular*} を {NiceTabular*} に置き換えるとcolortbl-like
、次のようになります。
\documentclass{article}
\usepackage{float}
\usepackage{xcolor}
\usepackage{nicematrix}
\usepackage{bigstrut}
\definecolor{LightGray}{gray}{0.9}
\begin{document}
\begin{table}[H]
\centering
\caption{Not too good looking table here.\label{tab:table1}}
\footnotesize
% Table generated by Excel2LaTeX from sheet 'Sheet2'
\begin{NiceTabular*}{\textwidth}{c @{\extracolsep{\fill}} c|ccc}[colortbl-like]
%\begin{tabular*}{cc|cc}
%\toprule
\hline
\multicolumn{2}{c|}{\textbf{Test1}} & \multicolumn{2}{c}{\textbf{Test2}} \bigstrut[t]\\
Test11 & Test12 & Test13 & Test14 \bigstrut[b]\\
%\midrule
\hline
FLTR2 & 2 & 40 & FLTR0 \bigstrut[t]\\
FLTR0 & 80 & 80 & FLTR0 \\
\rowcolor[rgb]{ 1, .78, .808} \textcolor[rgb]{ .612, 0, .024}{FLTR0} & \textcolor[rgb]{ .612, 0, .024}{160} & \textcolor[rgb]{ .612, 0, .024}{204} & \textcolor[rgb]{ .612, 0, .024}{FLTR4} \\
FLTR6 & 6 & 44 & FLTR4 \\
\rowcolor[rgb]{ 1, .78, .808} \textcolor[rgb]{ .612, 0, .024}{FLTR16} & \textcolor[rgb]{ .612, 0, .024}{16} & \cellcolor[rgb]{ 1, 1, 1}43 & \cellcolor[rgb]{ 1, 1, 1}FLTR3 \\
FLTR4 & 44 & 6 & FLTR6 \bigstrut[b]\\
\hline
%\bottomrule
\end{NiceTabular*}%
%\end{tabular*}
\end{table}
\end{document}
表の序文では 5 列と記載されていますが、実際に使用されているのは 4 列だけであることに注意してください。