Überarbeitungsverlauf[Zurück]
Klicke auf Einblenden/Ausblenden von Überarbeitungen 3
markdown

26 Jun '16, 11:52

saputello's gravatar image

saputello
11.1k174365

Zu große Abstände in Tikz-Matrix

Anschlussfrage zu [wie-stelle-ich-die-matrixparameter-bei-der-tikz-bibliothek-matrix-ein][1] ![alt text][2] Ich habe in folgendem Code die Labels als `overlay` deklariert und im `MatrixStyle` eingestellt `column sep=-\pgflinewidth, row sep=-\pgflinewidth` Trotzdem tauchen noch unerwünschte Abstände auf - im Bild rot und blau markiert **Hinweis**: · **Hinweise:** * Ich füge hier zwei tikz-Matrizen `tikz`-Matrizen (Kasten I, Kasten II) in eine tikz-Matrix. `tikz`-Matrix. Dazu habe ich die beiden in `lrbox`en definiert; ich fand keine andere Möglichkeit. Könnten die Abstandsprobleme damit zusammenhängen? · * Ich habe hier meist mit `\def`, statt `\newcommand` gearbeitet, weil ich Notation angenehmer finde, wenn sie keine Probleme hervorruft. <!-- --> \documentclass[border=10pt, varwidth]{standalone} %\documentclass[]{article} \usepackage[utf8]{inputenc} \usepackage[ngerman]{babel} \usepackage[T1]{fontenc} \usepackage{amsmath,amsfonts,amssymb, relsize} \usepackage{tikz} \usetikzlibrary{matrix, decorations.pathreplacing} \begin{document} \tikzset{MatrixStyle/.style={% %matrix of math nodes, %draw, densely dashed, %inner ysep=2.5pt, %%column sep=5ex, row sep = 5ex, %nodes={ %outer sep=0mm, % %inner sep=2pt, %%text width=1.5em,align=center %%node distance = 0cm, % kein Effekt %}, matrix of math nodes, draw, densely dashed, inner ysep=2.5pt, column sep=-\pgflinewidth,% <- column sep passend setzen row sep=-\pgflinewidth% <- row sep passend setzen }% } % Label für Blöcke definieren \tikzset{% BlockLabel/.style n args={4}{% label={[overlay, label position={#3}, rotate={#4}]: {\text{$\mathsmaller{(#1 \times #2)}$}} % Text } }, BlockLabel/.default={?}{?}{below}{0} }% % Leerer Block \def\Ph{\phantom{1}} \def\BlockLeer{% \begin{matrix} \Ph & \Ph & \Ph \\ & & \\ & & \\ \end{matrix} }% % Unbekannter Block \def\BlockUnbekannt{% \node[draw, densely dashed, BlockLabel={?}{?}{above}{0}, ] (BlockUnbekannt){ \begin{matrix} \Ph & \Ph & \Ph \\ & ? & \\ & & \\ \end{matrix} }; }% % Jordan Kasten I, Block I \def\JordanKastenIBlockI{% \node[draw, densely dashed, inner sep=2.5pt, BlockLabel={3}{3}{below}{0}, ] (JordanKastenIBlockI){ \begin{matrix} 0 & 1 & \\ & 0 & 1 \\ & & 0 \\ \end{matrix} }; }% % Jordan Kasten I, Block II \def\JordanKastenIBlockII{% \BlockUnbekannt } % Jordan Kasten I \newsavebox\InhaltJordanKastenI \begin{lrbox}{\InhaltJordanKastenI} \begin{tikzpicture} \matrix (JordanKastenI) [ MatrixStyle, BlockLabel={?}{?}{above}{0}, ] {% \JordanKastenIBlockI & \\ & \JordanKastenIBlockII \\ }; \end{tikzpicture} \end{lrbox} \newcommand{\JordanKastenI}{\usebox\InhaltJordanKastenI} % Jordan Kasten II, Block I \def\JordanKastenIIBlockI{% \node[draw, densely dashed, BlockLabel={2}{2}{below}{0}, ] (JordanKastenIIBlockI){ \begin{matrix} 1 & 1 \\ & 1 \\ \end{matrix} }; }% % Jordan Kasten II, Block II \def\JordanKastenIIBlockII{% \BlockUnbekannt } % Jordan Kasten II \newsavebox\InhaltJordanKastenII \begin{lrbox}{\InhaltJordanKastenII} \begin{tikzpicture}[] \matrix (JordanKastenII) [ MatrixStyle, BlockLabel={?}{?}{above}{0}, ] {% \JordanKastenIIBlockI & \\ & \JordanKastenIIBlockII \\ }; \end{tikzpicture} \end{lrbox} \newcommand{\JordanKastenII}{\usebox\InhaltJordanKastenII} \begin{tikzpicture}[scale=1] % Jordannormalform JNF \def\LabelJNF{$(7 \times 7)$} \matrix (m) [%label=below:, left delimiter={(},right delimiter={)}, MatrixStyle, draw=none, ] {% \JordanKastenI & \\ & \JordanKastenII \\ }; % Underbrace \draw [ decoration={brace}, decorate] (m.south east) -- (m.south west) node[midway, below=4.5pt]{\LabelJNF}; % Platzhalter "J = " \node[xshift=-0.75cm] at (m.west) {$J =$}; \end{tikzpicture} \end{document} [1]: http://texwelt.de/wissen/fragen/17601/wie-stelle-ich-die-matrixparameter-bei-der-tikz-bibliothek-matrix-ein [2]: http://texwelt.de/wissen/upfiles/55555555_35.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 2

25 Jun '16, 18:08

cis's gravatar image

cis
9.6k104461491

Zu große Abstände in Tikz-Matrix

Anschlussfrage zu [wie-stelle-ich-die-matrixparameter-bei-der-tikz-bibliothek-matrix-ein][1] ![alt text][2] Ich habe in folgendem Code die Labels als `overlay` deklariert und im `MatrixStyle` eingestellt `column sep=-\pgflinewidth, row sep=-\pgflinewidth` Trotzdem tauchen noch unerwünschte Abstände auf. auf - im Bild rot und blau markiert **Hinweis**: · Ich füge hier zwei tikz-Matrizen (Kasten I, Kasten II) in eine tikz-Matrix. Dazu habe ich die beiden in `lrbox`en definiert; ich fand keine andere Möglichkeit. Könnten die Abstandsprobleme damit zusammenhängen? · Ich habe hier meist mit `\def`, statt `\newcommand` gearbeitet, weil ich Notation angenehmer finde, wenn sie keine Probleme hervorruft. \documentclass[border=10pt, varwidth]{standalone} %\documentclass[]{article} \usepackage[utf8]{inputenc} \usepackage[ngerman]{babel} \usepackage[T1]{fontenc} \usepackage{amsmath,amsfonts,amssymb, relsize} \usepackage{tikz} \usetikzlibrary{matrix, decorations.pathreplacing} \begin{document} \tikzset{MatrixStyle/.style={% %matrix of math nodes, %draw, densely dashed, %inner ysep=2.5pt, %%column sep=5ex, row sep = 5ex, %nodes={ %outer sep=0mm, % %inner sep=2pt, %%text width=1.5em,align=center %%node distance = 0cm, % kein Effekt %}, matrix of math nodes, draw, densely dashed, inner ysep=2.5pt, column sep=-\pgflinewidth,% <- column sep passend setzen row sep=-\pgflinewidth% <- row sep passend setzen }% } % Label für Blöcke definieren \tikzset{% BlockLabel/.style n args={4}{% label={[overlay, label position={#3}, rotate={#4}]: {\text{$\mathsmaller{(#1 \times #2)}$}} % Text } }, BlockLabel/.default={?}{?}{below}{0} }% % Leerer Block \def\Ph{\phantom{1}} \def\BlockLeer{% \begin{matrix} \Ph & \Ph & \Ph \\ & & \\ & & \\ \end{matrix} }% % Unbekannter Block \def\BlockUnbekannt{% \node[draw, densely dashed, BlockLabel={?}{?}{above}{0}, ] (BlockUnbekannt){ \begin{matrix} \Ph & \Ph & \Ph \\ & ? & \\ & & \\ \end{matrix} }; }% % Jordan Kasten I, Block I \def\JordanKastenIBlockI{% \node[draw, densely dashed, inner sep=2.5pt, BlockLabel={3}{3}{below}{0}, ] (JordanKastenIBlockI){ \begin{matrix} 0 & 1 & \\ & 0 & 1 \\ & & 0 \\ \end{matrix} }; }% % Jordan Kasten I, Block II \def\JordanKastenIBlockII{% \BlockUnbekannt } % Jordan Kasten I \newsavebox\InhaltJordanKastenI \begin{lrbox}{\InhaltJordanKastenI} \begin{tikzpicture} \matrix (JordanKastenI) [ MatrixStyle, BlockLabel={?}{?}{above}{0}, ] {% \JordanKastenIBlockI & \\ & \JordanKastenIBlockII \\ }; \end{tikzpicture} \end{lrbox} \newcommand{\JordanKastenI}{\usebox\InhaltJordanKastenI} % Jordan Kasten II, Block I \def\JordanKastenIIBlockI{% \node[draw, densely dashed, BlockLabel={2}{2}{below}{0}, ] (JordanKastenIIBlockI){ \begin{matrix} 1 & 1 \\ & 1 \\ \end{matrix} }; }% % Jordan Kasten II, Block II \def\JordanKastenIIBlockII{% \BlockUnbekannt } % Jordan Kasten II \newsavebox\InhaltJordanKastenII \begin{lrbox}{\InhaltJordanKastenII} \begin{tikzpicture}[] \matrix (JordanKastenII) [ MatrixStyle, BlockLabel={?}{?}{above}{0}, ] {% \JordanKastenIIBlockI & \\ & \JordanKastenIIBlockII \\ }; \end{tikzpicture} \end{lrbox} \newcommand{\JordanKastenII}{\usebox\InhaltJordanKastenII} \begin{tikzpicture}[scale=1] % Jordannormalform JNF \def\LabelJNF{$(7 \times 7)$} \matrix (m) [%label=below:, left delimiter={(},right delimiter={)}, MatrixStyle, draw=none, ] {% \JordanKastenI & \\ & \JordanKastenII \\ }; % Underbrace \draw [ decoration={brace}, decorate] (m.south east) -- (m.south west) node[midway, below=4.5pt]{\LabelJNF}; % Platzhalter "J = " \node[xshift=-0.75cm] at (m.west) {$J =$}; \end{tikzpicture} \end{document} [1]: http://texwelt.de/wissen/fragen/17601/wie-stelle-ich-die-matrixparameter-bei-der-tikz-bibliothek-matrix-ein [2]: http://texwelt.de/wissen/upfiles/55555555_35.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

25 Jun '16, 18:07

cis's gravatar image

cis
9.6k104461491