Überarbeitungsverlauf[Zurück]
Klicke auf Einblenden/Ausblenden von Überarbeitungen 3
Änderungen von Ijon Tichy übernommen

01 Sep '17, 18:42

esdd's gravatar image

esdd
17.8k304257

Hier ist ein Vorschlag, wie man das lösen könnte. Dabei werden alle nicht leeren Zellen mit bestimmten Farben gefüllt, weshalb in diesen wenigstens `{}` stehen muss. **Update:** Entsprechend dem Kommentar von @Ijon Tichy wird zur Bestimmung der benötigten Spaltenbreiten jetzt die `pgfmath` Funktion `width` verwendet, da der ursprüngliche Vorschlag mit der aktuellen `tikz/pgf` Version nicht mehr funktioniert. Wie von ihm ebenfalls erwähnt, ist dabei zu beachten, dass bei deutschen Spracheinstellungen zusätzlich die TikZ-Bibliothek `babel` geladen werden muss, damit die benötigte `"…"`-Syntax funktioniert. Würde für die deutschen Spracheinstellungen das Paket `polyglossia` genutzt, dann muss die TikZ-Bibliothek `babel` vor diesem geladen werden. \documentclass[margin=5pt]{standalone} \usepackage[utf8]{inputenc} \usepackage{tikz} \usetikzlibrary{matrix,babel} \usepackage[ngerman]{babel} \usepackage[utf8]{inputenc} \usepackage{tikz} \usetikzlibrary{matrix} \colorlet{mbg}{lightgray!50} \colorlet{mbb}{blue!15} \colorlet{mbs}{green!10} \begin{document} \begin{tikzpicture}[ text depth=0.7ex, text height=2.3ex, ] \matrix (m) [ matrix of nodes, row sep=0pt, column sep=0pt, minimum width=3ex, text depth=.5ex, text height=2ex, inner sep=.25ex, nodes={fill=mbg}, font=\ttfamily, align=center, row 1/.style={nodes={fill=white},font=\bfseries},%erste Zeile mbbspalte/.style={%Einstellungen für die ersten 4 Spalten text width=#1, font=\rmfamily, every even row/.style={nodes={fill=mbb}} }, column 1/.style={mbbspalte=1.25*\widthof{Rang}}, 1/.style={mbbspalte=1.25*width("Rang")}, column 2/.style={mbbspalte=1.25*\widthof{Gewicht},column 2/.style={mbbspalte=1.25*width("Gewicht"),column sep=1ex}, column 3/.style={mbbspalte=1.25*\widthof{Anzahl},column 3/.style={mbbspalte=1.25*width("Anzahl"),column sep=1ex}, column 4/.style={mbbspalte=1.25*\widthof{Nr.},font=\ttfamily}, 4/.style={mbbspalte=1.25*width("Nr."),font=\ttfamily}, column 5/.style={text width=\widthof{Das width=width("Das ist ein Testkriterium},font=\rmfamily}, Testkriterium")+2pt,font=\rmfamily}, row 11/.style={nodes={fill=mbs}},%letzte Zeile mit anderer Farbe gefüllt ] {% überall dort wo ein Node sein soll, muss wenigstens {} stehen Rang&Gewicht&Anzahl&Nr.& Bewertungskriterium \\ {}&{}&{}&a&Das ist ein Testkriterium\\ & & & & &{}\\ {}&{}&{}&b&Das ist ein Testkriterium& &{}\\ & & & & &{}& &{}\\ {}&{}&{}&c&Das ist ein Testkriterium& &{}& &{} \\ & & & & &{}& &{}\\ {}&{}&{}&d&Das ist ein Testkriterium& &{} \\ & & & & &{}\\ {}&{}&{}&e&Das ist ein Testkriterium\\[1ex] &{}&{}\\ }; %Umrandungen \foreach \c in {1,...,5}% für erste Zeile \draw(m-1-\c.north west)rectangle ([yshift=\pgflinewidth,xshift=-\pgflinewidth]m-1-\c.south east); \foreach \c in {1,...,4}% für die ersten vier Spalten \draw(m-1-\c.north west)rectangle ([yshift=\pgflinewidth,xshift=-\pgflinewidth]m-10-\c.south east); \end{tikzpicture} \end{document} ![alt text][1] [1]: http://texwelt.de/wissen/upfiles/praeferenzmatrix_2.PNGhttp://texwelt.de/wissen/upfiles/tw_praeferenzmatrix.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 2

23 Okt '14, 00:56

esdd's gravatar image

esdd
17.8k304257

Hier ist ein Vorschlag, wie man das lösen könnte. Dabei werden alle nicht leeren Zellen mit bestimmten Farben gefüllt, weshalb in diesen wenigstens `{}` stehen muss. \documentclass[margin=5pt]{standalone} \usepackage[ngerman]{babel} \usepackage[utf8]{inputenc} \usepackage{tikz} \usetikzlibrary{matrix} \colorlet{mbg}{lightgray!50} \colorlet{mbb}{blue!15} \colorlet{mbs}{green!10} \begin{document} \begin{tikzpicture}[ text depth=0.7ex, text height=2.3ex, ] \matrix (m) [ matrix of nodes, row sep=0pt, column sep=0pt, minimum width=3ex, text depth=.5ex, text height=2ex, inner sep=.25ex, nodes={fill=mbg}, font=\ttfamily, align=center, row 1/.style={nodes={fill=white},font=\bfseries},%erste Zeile mbbspalte/.style={%Einstellungen für die ersten 4 Spalten text width=#1, font=\rmfamily, every even row/.style={nodes={fill=mbb}} }, column 1/.style={mbbspalte=1.25*\widthof{Rang}}, column 2/.style={mbbspalte=1.25*\widthof{Gewicht},column sep=1ex}, column 3/.style={mbbspalte=1.25*\widthof{Anzahl},column sep=1ex}, column 4/.style={mbbspalte=1.25*\widthof{Nr.},font=\ttfamily}, column 5/.style={text width=\widthof{Das ist ein Testkriterium},font=\rmfamily}, row 11/.style={nodes={fill=mbs}},%letzte Zeile mit anderer Farbe gefüllt ] {% überall dort wo ein Node sein soll, muss wenigstens {} stehen Rang&Gewicht&Anzahl&Nr.& Bewertungskriterium \\ {}&{}&{}&a&Das ist ein Testkriterium\\ & & & & &{}\\ {}&{}&{}&b&Das ist ein Testkriterium& &{}\\ & & & & &{}& &{}\\ {}&{}&{}&c&Das ist ein Testkriterium& &{}& &{} \\ & & & & &{}& &{}\\ {}&{}&{}&d&Das ist ein Testkriterium& &{} \\ & & & & &{}\\ {}&{}&{}&e&Das ist ein Testkriterium\\[1ex] &{}&{}\\ }; %Umrandungen \foreach \c in {1,...,5}% für erste Zeile \draw(m-1-\c.north west)rectangle ([yshift=\pgflinewidth,xshift=-\pgflinewidth]m-1-\c.south east); \foreach \c in {1,...,4}% für die ersten vier Spalten \draw(m-1-\c.north west)rectangle ([yshift=\pgflinewidth,xshift=-\pgflinewidth]m-10-\c.south east); \end{tikzpicture} \end{document} ![alt text][1] [1]: http://texwelt.de/wissen/upfiles/praeferenzmatrix_1.PNGhttp://texwelt.de/wissen/upfiles/praeferenzmatrix_2.PNG
Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

23 Okt '14, 00:55

esdd's gravatar image

esdd
17.8k304257

Willkommen, erstes Mal hier? Schau mal unter FAQ!

×