von esdd » So 10. Nov 2013, 21:46
Wenn die Spaltenbeschriftung gedreht sein kann, könnte man das so lösen:
\documentclass{scrartcl}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{matrix}
\tikzset{streichen/.style={red,very thick}}
\newcommand\zeilenstreichen[2][m]{%
\foreach \zeile in {#2}{
\draw[streichen](#1-\zeile-1-|#1.west)--(#1-\zeile-1-|#1.east);}
}
\newcommand\spaltenstreichen[2][m]{%
\foreach \spalte in {#2}{
\draw[streichen](#1-1-\spalte|-#1.north)--(#1-1-\spalte|-#1.south);}
}
\newcommand\zellenstreichen[2][m]{%
\foreach \zelle in {#2}{\draw[streichen]([yshift=0.8ex]#1-\zelle.base west)--([yshift=0.8ex]#1-\zelle.base east);}
}
\newcommand\beschriftung[3][m]{%
\foreach[count=\n] \stadt in {#2}{
\node[anchor=base east,text width=\widthof{#3},align=left,xshift=-2mm] at (#1-\n-1.base-|#1.west){\stadt};
\node[align=left,anchor=west,rotate=90] at (#1-1-\n.north|-#1.north){\stadt};}
}
\begin{document}
$B=$
\begin{tikzpicture}[baseline]
\matrix(m)[matrix of math nodes, left delimiter=(,right delimiter=)]{%
\text{X} & 6 & 0^2 & 6 & 2 & 12 \\
4 & \text{X} & 6 & 0^3 & 10 & 3 \\
0^2 & 8 & \text{X} & 2 & 0^2 & 8 \\
4 & 0^3 & 0^0 & \text{X} & 4 & 0^3 \\
2 & 12 & 0^2 & 6 & \text{X} & 9 \\
10 & 3 & 6 & 0^3 & 7 & \text{X} \\ };
\zeilenstreichen{2,4}
\spaltenstreichen{2,4}
\zellenstreichen{1-3,1-5}
\beschriftung{Aachen,Berlin,Hamburg,Paderborn,Dortmund,Frankfurt}{Paderborn}
\end{tikzpicture}
\end{document}
Gruß
Elke
Wenn die Spaltenbeschriftung gedreht sein kann, könnte man das so lösen:
[code]\documentclass{scrartcl}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{matrix}
\tikzset{streichen/.style={red,very thick}}
\newcommand\zeilenstreichen[2][m]{%
\foreach \zeile in {#2}{
\draw[streichen](#1-\zeile-1-|#1.west)--(#1-\zeile-1-|#1.east);}
}
\newcommand\spaltenstreichen[2][m]{%
\foreach \spalte in {#2}{
\draw[streichen](#1-1-\spalte|-#1.north)--(#1-1-\spalte|-#1.south);}
}
\newcommand\zellenstreichen[2][m]{%
\foreach \zelle in {#2}{\draw[streichen]([yshift=0.8ex]#1-\zelle.base west)--([yshift=0.8ex]#1-\zelle.base east);}
}
\newcommand\beschriftung[3][m]{%
\foreach[count=\n] \stadt in {#2}{
\node[anchor=base east,text width=\widthof{#3},align=left,xshift=-2mm] at (#1-\n-1.base-|#1.west){\stadt};
\node[align=left,anchor=west,rotate=90] at (#1-1-\n.north|-#1.north){\stadt};}
}
\begin{document}
$B=$
\begin{tikzpicture}[baseline]
\matrix(m)[matrix of math nodes, left delimiter=(,right delimiter=)]{%
\text{X} & 6 & 0^2 & 6 & 2 & 12 \\
4 & \text{X} & 6 & 0^3 & 10 & 3 \\
0^2 & 8 & \text{X} & 2 & 0^2 & 8 \\
4 & 0^3 & 0^0 & \text{X} & 4 & 0^3 \\
2 & 12 & 0^2 & 6 & \text{X} & 9 \\
10 & 3 & 6 & 0^3 & 7 & \text{X} \\ };
\zeilenstreichen{2,4}
\spaltenstreichen{2,4}
\zellenstreichen{1-3,1-5}
\beschriftung{Aachen,Berlin,Hamburg,Paderborn,Dortmund,Frankfurt}{Paderborn}
\end{tikzpicture}
\end{document}[/code]
Gruß
Elke