seit geraumer Zeit versuche ich, einen morphologischen Kasten mit tabularx zu erstellen (hat funktioniert) und dann die entsprechenden Ausprägungen einzufärben (funktioniert nur teilweise). Die Anzahl der Ausprägungen (Spalten) können dabei je Merkmal (Zeile) variieren.
Bisher nutze ich Multicolumns in tabularx-Tabellen in Verbindung mit \cellcolor bzw. einem auf tabularx-Tabellen angepassten Befehl (online gefunden, wahrscheinlich bei tex.stackexchange).
Beim Einfärben treten jedoch Probleme vor allem in den letzten Zellen einer Zeile auf. Außerdem passt die Spaltenaufteilung nicht mehr, wenn kein multicolumn genutzt wird.
Kann mir jemand einen Tipp geben, was ich übersehen habe bzw. wie ich das Ergebnis erhalte, das ich gerne möchte?
Ausprobiert habe ich auch verschachtelte Tabellen (in Verbindung mit \cellcolor), aber auch das war bisher nicht zielführend (Lage der verschachtelten Tabelle und deren Höhe passen nicht). Ein Beispiel dafür habe ich mit ins MWE gepackt. TikZ habe ich mir bisher nur am Rande angeschaut, da mich die gezeigten Beispiele nicht überzeugen. Einen Unterschied beim Verhalten zwischen tabu und tabularx konnte ich bisher nicht feststellen.
Vielen Dank im Voraus für eure Hilfe.
Folgend ein Beispiel mit einmal mit multicolumns und einmal mit verschachtelten Tabellen (neue Befehle habe ich mir definiert, da ich einige Tabellen so erstellen will/muss und es damit schneller geht):
\documentclass{scrreport} \usepackage{calc} \usepackage{tabularx} \usepackage{array} \usepackage[table]{xcolor} %%% neue Befehle %%% % neuer Spaltentyp für zentrierte X-Spalten \newcolumntype{C}{>{\centering\arraybackslash}X} % neuer Befehl für umbrechenden Multicolumns über X-Spalten. Funktioniert gut \newcommand{\mcX}[2]{\multicolumn{#1} {%\def\Anzahl{#1}% |>{\hsize=\dimexpr#1\linewidth+#1\tabcolsep+#1\tabcolsep%-#1\arrayrulewidth }C|} {#2}} % neuer Befehl, um Multicolumns über X-Spalten einzufärben. Funktioniert mäßig \newcommand{\mcXColor}[2]{\multicolumn{#1} {%\def\Anzahl{#1}% |>{\cellcolor{lightgray}\hsize=\dimexpr#1\linewidth+#1\tabcolsep+#1\tabcolsep-#1\arrayrulewidth }C|} {#2}} %%% Dokumentstart \begin{document} % für vertikal zentrierte Spalten die X-Spaltendefinition anpassen. Grundlage sind jetzt die m-Spalten (sonst die p-Spalten) \renewcommand{\tabularxcolumn}[1]{>{\normalsize\centering\arraybackslash}m{#1}} \begin{table}[htbp] \small \caption{Multicolumntabelle} \begin{tabularx} {\textwidth} % Tabellenbreite = Textbreite {|m{2.5cm}| % muss für die richtigen Zentrierung "m" sein *{6}{X|} }% % >\centering\arraybackslash}% %} % horizontale & vertikale Zentrierung der X-Spalten \hline Merkmal & \mcX{6}{Merkmalsausprägung} \\ \hline Forschungs\-gebiete & bio\-lo\-gisch & \cellcolor{lightgray}sozio\--technisch & öko\-logisch & öko\-nomisch & tech\-nisch & so\-zial \\ \hline Ab\-strak\-tions\-grad & \mcX{3}{\cellcolor{lightgray}gegen\-ständlich} & \mcX{3}{formal} \\ \hline Ent\-stehungs\-art & \mcX{3}{natürlich} & \mcX{3}{\cellcolor{lightgray}künstlich} \\ \hline Zweck des Systems & \mcXColor{2}{Örtliche und zeitliche Veränderung} & \mcX{2}{Form\-veränderung} & \mcX{2}{Struktur\-änderung} \\ \hline Zeit\-ab\-hängig\-keit & \mcX{3}{statisch} & \mcXColor{3}{dynamisch} \\ \hline \end{tabularx}% \end{table} \begin{table}[htbp] \small \caption{verschachtelte Tabelle} \begin{tabularx} {\textwidth} {|m{2.5cm}| % muss für die richtigen Zentrierung "m" sein X| }% \hline Merkmal & Merkmalsausprägung \\ \hline Forschungs\-gebiete & {\begin{tabularx}{\linewidth+2\tabcolsep}{*{5}{X|}X} bio\-lo\-gisch & \cellcolor{lightgray}sozio\--technisch & öko\-logisch & öko\-nomisch & tech\-nisch & so\-zial \end{tabularx}}\\ \hline Ab\-strak\-tions\-grad & {\begin{tabularx}{\linewidth+2\tabcolsep}{*{2}{X|}X} \cellcolor{lightgray}gegen\-ständlich & formal \end{tabularx}}\\ \hline Ent\-stehungs\-art & {\begin{tabularx}{\linewidth+2\tabcolsep}{*{1}{X|}X} natürlich & \cellcolor{lightgray}künstlich \end{tabularx}}\\ \hline Zweck des Systems & {\begin{tabularx}{\linewidth+2\tabcolsep}{*{2}{X|}X} \cellcolor{lightgray}Örtliche und zeitliche Veränderung & Form\-veränderung & Struktur\-änderung \end{tabularx}}\\ \hline Zeit\-ab\-hängig\-keit & {\begin{tabularx}{\linewidth+2\tabcolsep}{*{1}{X|}X} statisch & \cellcolor{lightgray}dynamisch \end{tabularx}}\\ \hline \end{tabularx}% \label{tab:Morphologie-Konzepte}% \par \normalsize \end{table}% % alte X-Spaltendefinition auf p-Basis wiederherstellen \renewcommand{\tabularxcolumn}[1]{p{#1}} \end{document}