
Ich habe folgende Tabelle
\newcommand{\headrow}{\rowcolor{black!20}}
\definecolor{Gray}{gray}{0.90}
\begin{table}[ht]\rowcolors{1}{Gray}{white}
\begin{center}
\caption{Test Table}
\begin{tabular}{l|cccccccc}
\hline
\headrow
\multirow{2}{1.7cm}{\textbf{Approach}}& \multicolumn{8}{c}{\centering \textbf{Test}}\\
\cline{2-9}
& \multicolumn{1}{c}{\textbf{A}} & \multicolumn{1}{c}{\textbf{B}}& \multicolumn{1}{c}{\textbf{C}} & \multicolumn{1}{c}{\textbf{D}}& \multicolumn{1}{c}{\textbf{E}} & \multicolumn{1}{c}{\textbf{F}}
& \multicolumn{1}{c}{\textbf{G}}& \multicolumn{1}{c}{\textbf{H}}\\
\hline
App1 & && && &&&
\\
App2 && &&& &&&
\\
\hline
\end{tabular}
\end{center}
\end{table}
Die Ausgabe ist die folgende
Wie Sie sehen, hat die Kopfzeile zwei Grautöne, einen von \headrow und einen aus meiner Definition der Graufarbe.
Wie kann ich also für die Kopfzeile dieselbe Farbe wie für \headrow festlegen und das Wort „Approch“ sichtbar machen?
Beachten Sie, dass bei Verwendung der Nicematrix der folgende Fehler auftritt
Antwort1
Mit {NiceTabular}
erhalten nicematrix
Sie im PDF-Viewer ein nahezu perfektes Ergebnis (Sie sehen beispielsweise nicht die dünnen weißen Linien, die Sie in Viewern sehen, die MuPDF verwenden, wie z. B. SumatraPDF).
Allerdings benötigt man dazu mehrere Zusammenstellungen.
\documentclass{article}
\usepackage{nicematrix}
\begin{document}
\definecolor{Gray}{gray}{0.90}
\begin{table}[ht]
\caption{Test Table}
\begin{NiceTabular}{l|cccccccc}%
[code-before = \rowcolors{3}{}{Gray} \rowcolor{black!20}{1,2}]
\hline
\Block{2-1}{\textbf{Approach}} & \multicolumn{8}{c}{\textbf{Test}}\\
\cline{2-9}
& \textbf{A} & \textbf{B} & \textbf{C} & \textbf{D} & \textbf{E} & \textbf{F}
& \textbf{G} & \textbf{H} \\
\hline
App1 \\
App2 \\
\hline
\end{NiceTabular}
\end{table}
\end{document}
Antwort2
Eine einfache Lösung besteht darin, \multirow{-2}
am Anfang der folgenden Zeile hinzuzufügen und \cellcolor{black!20}
innerhalb von \multiro hinzuzufügen. Unabhängig davon: Ich habe das caption
Paket hinzugefügt, um einen dekantierten Abstand zwischen Überschrift und Tabelle zu haben. Ich habe auch alles Unnötige \multicolumn{1}{c}{…}
in der Überschriftenzeile entfernt. Letzte Anmerkung: Verwenden Sie nicht center
innerhalb einer Tabelle: Es fügt dem normalen Abstand der Tabellenumgebung unerwünschten vertikalen Abstand hinzu. Umgebung.
\documentclass{article}
\usepackage{multirow, caption}
\usepackage[table]{xcolor}
\newcommand{\headrow}{\rowcolor{black!20}}
\begin{document}
\definecolor{Gray}{gray}{0.90}
\begin{table}[ht]\rowcolors{3}{}{Gray}
\setlength{\extrarowheight}{2pt}
\centering
\caption{Test Table}
\begin{tabular}{l|*{8}{c}}
\hline
\headrow & \multicolumn{8}{c}{\centering \textbf{Test}}\\
\cline{2-9}
\headrow \multirow{-2}{1.7cm}{\textbf{Approach}} & \textbf{A} & \textbf{B}& \textbf{C} & \textbf{D}& \textbf{E} & \textbf{F}
& \textbf{G}& \textbf{H}\\
\hline
App1 & && && &&&
\\
App2 && &&& &&&
\\
\hline
\end{tabular}
\end{table}
\end{document}