Ich würde gerne einen morphologischen Kasten um folgendes erweitern: vor der nummerierung würde ich gerne eine weiter Spalten haben in der vertikal zB ein Bezeichnen über eine bestimmte Anzahl von Zeilen geht. Anschließend soll diese "Gruppe" von einer Linie von der nächsten getrennt werden. Könnt ihr mir da weiterhelfen? Open in writeLaTeX
\documentclass[DIV=21,12pt,captions=tableheading]{scrreprt} \usepackage[ngerman]{babel} \usepackage[utf8]{inputenc} \usepackage{booktabs} \usepackage{tikz} \usetikzlibrary{matrix} \newcommand\zeilenabstand{\normalbaselineskip} \newcommand\grafik[2]{% \begin{minipage}{2cm} \centering\smash{\raisebox{\tabcolsep}{#1}}% \includegraphics[width=\linewidth,height=2cm]{#2}% \end{minipage}% } \tikzset{vp/.style={circle,fill,inner sep=3pt}} \newcommand\verbindungslinie[3]{ \foreach [remember=\p as \lastp (initially #2)] \p in {#3} \draw[#1](\lastp.center)node[vp]{}--(\p.center)node[vp]{}; } \usepackage{mwe}% für example-image \begin{document} \begin{center} \begin{minipage}{\linewidth} \captionof{table}{Morphologischer Kasten}\label{morphKasten} \begin{tikzpicture}[ very thick, nodes={inner sep=\tabcolsep} ] \matrix[ matrix of nodes, inner sep=0pt, row sep=\zeilenabstand, column 2/.style={minimum width=5cm}, ](m){ 1&Teilfunktion 1 &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image}\\ 2&Teilfunktion 2 &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image}\\ \ldots&{} &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image}\\ n&Teilfunktion n &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image}\\ &&{}&{}&{}&{}\\ }; % Kopfzeile \node(ul)[anchor=south west] at ([yshift={\zeilenabstand+\aboverulesep+\belowrulesep}]m.north west) {Teilfunktion}; \node(or)[anchor=south east] at (ul.north-|m-1-2.east){Lösungsvarianten}; \foreach[count=\i from 3] \c in {1,2,\ldots,m} \node[anchor=base] at (or.base-|m-1-\i){\c}; % Tabellenlinien \draw[line width=\lightrulewidth](or.north-|ul.west)--(or.east|-ul.south) ([yshift=-\aboverulesep]ul.south-|m.west) --([yshift=-\aboverulesep]ul.south-|m.east); \draw[line width=\heavyrulewidth]([yshift=\belowrulesep]or.north-|m.west) --([yshift=\belowrulesep]or.north-|m.east) ([yshift={-\aboverulesep-\zeilenabstand}]m.south west) --([yshift={-\aboverulesep-\zeilenabstand}]m.south east); % Verbindungslinien \verbindungslinie{red}{m-1-3}{m-2-4,m-3-3,m-4-5,m-5-5} \verbindungslinie{blue}{m-1-5}{m-2-3,m-3-3,m-4-3,m-5-3} \verbindungslinie{green}{m-1-6}{m-2-6,m-3-4,m-4-6,m-5-6} \foreach \f/\p/\t in {red/m-5-5/LV1,blue/m-5-3/LV2,green/m-5-6/LV3} \node[\f,below,font=\bfseries]at(\p){\t}; \end{tikzpicture} \end{minipage} \end{center} \end{document} gefragt 01 Jan '15, 22:34 Giovario |
Die 1.Spalte könnte etwas breiter gemacht und rechtsbündig ausgerichtet werden: Open in writeLaTeX
column 1/.style={text width={\zeilenabstand+1em},align=right}, Dann kann die Beschriftung mit samt der Trennlinie hinterher eingefügt werden: Open in writeLaTeX
% vertikale Beschriftung und Tabellenzwischenlinie \path(m-1-1.north west)-- node[xshift=\zeilenabstand,rotate=90]{Beschriftung} (m-2-1.south west); \draw[line width=\lightrulewidth](m.west|-m-2-3.south)--(m.east|-m-2-3.south); Code: Open in writeLaTeX
\documentclass[DIV=21,12pt,captions=tableheading]{scrreprt} \usepackage[ngerman]{babel} \usepackage[utf8]{inputenc} \usepackage{booktabs} \usepackage{tikz} \usetikzlibrary{matrix} \newcommand\zeilenabstand{\normalbaselineskip} \newcommand\grafik[2]{% \begin{minipage}{2cm} \centering\smash{\raisebox{\tabcolsep}{#1}}% \includegraphics[width=\linewidth,height=2cm]{#2}% \end{minipage}% } \tikzset{vp/.style={circle,fill,inner sep=3pt}} \newcommand\verbindungslinie[3]{ \foreach [remember=\p as \lastp (initially #2)] \p in {#3} \draw[#1](\lastp.center)node[vp]{}--(\p.center)node[vp]{}; } \usepackage{mwe}% für example-image \begin{document} \begin{center} \begin{minipage}{\linewidth} \captionof{table}{Morphologischer Kasten}\label{morphKasten} \begin{tikzpicture}[ very thick, nodes={inner sep=\tabcolsep} ] \matrix[ matrix of nodes, inner sep=0pt, row sep=\zeilenabstand, column 1/.style={text width={\zeilenabstand+1em},align=right}, column 2/.style={minimum width=4.5cm} ](m){ 1&Teilfunktion 1 &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image}\\ 2&Teilfunktion 2 &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image}\\ \ldots&{} &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image}\\ n&Teilfunktion n &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image} &\grafik{Text}{example-image}\\ &&{}&{}&{}&{}\\ }; % Kopfzeile \node(ul)[anchor=south west] at ([yshift={\zeilenabstand+\aboverulesep+\belowrulesep}]m.north west) {Teilfunktion}; \node(or)[anchor=south east] at (ul.north-|m-1-2.east){Lösungsvarianten}; \foreach[count=\i from 3] \c in {1,2,\ldots,m} \node[anchor=base] at (or.base-|m-1-\i){\c}; % Tabellenlinien \draw[line width=\lightrulewidth](or.north-|ul.west)--(or.east|-ul.south) ([yshift=-\aboverulesep]ul.south-|m.west) --([yshift=-\aboverulesep]ul.south-|m.east); \draw[line width=\heavyrulewidth]([yshift=\belowrulesep]or.north-|m.west) --([yshift=\belowrulesep]or.north-|m.east) ([yshift={-\aboverulesep-\zeilenabstand}]m.south west) --([yshift={-\aboverulesep-\zeilenabstand}]m.south east); % Verbindungslinien \verbindungslinie{red}{m-1-3}{m-2-4,m-3-3,m-4-5,m-5-5} \verbindungslinie{blue}{m-1-5}{m-2-3,m-3-3,m-4-3,m-5-3} \verbindungslinie{green}{m-1-6}{m-2-6,m-3-4,m-4-6,m-5-6} \foreach \f/\p/\t in {red/m-5-5/LV1,blue/m-5-3/LV2,green/m-5-6/LV3} \node[\f,below,font=\bfseries]at(\p){\t}; % vertikale Beschriftung und Tabellenzwischenlinie \path(m-1-1.north west)-- node[xshift=\zeilenabstand,rotate=90]{Beschriftung} (m-2-1.south west); \draw[line width=\lightrulewidth](m.west|-m-2-3.south)--(m.east|-m-2-3.south); \end{tikzpicture} \end{minipage} \end{center} \end{document} beantwortet 02 Jan '15, 00:00 esdd |