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

13 Feb '15, 16:29

esdd's gravatar image

esdd
17.8k304257

Bei `m`-Spalten werden die Inhalte der Tabellenzellen vertikal zentriert. Die Achse liegt allerdings nicht in der Mitte der Zeichnung, weshalb sie dann auch nicht vertikal mittig zur Formel ausgegeben wird. ![alt text][1] Deshalb sind `m`-Spalten hier nicht sinnvoll. Man könnte jetzt `X`-Spalten ohne die Umdefinition von `\tabularxcolumn` verwenden, da aber zum einen der Inhalt der Tabellenzellen einzeilig sein soll und zum anderen momentan die linke Tabellenspalte zu schmal ist - Du verwendest `\mbox` um den eigentlich nötigen Zeilenumbruch zu verhindern - ist es vermutlich sinnvoller zwei `r` Spalten zu nutzen. Damit würde dann die Zeichnung so ausgerichtet, dass sich die Koordinate `O` auf Höhe der Grundlinie der Matheformel befindet. Da `O` in dem Beispiel den Punkt `(0,0)` bezeichnet, kann man sogar nur einfach `baseline` statt `baseline=(O)` schreiben. ![alt text][2] Die Achse muss nun noch um die halbe Höhe einer `\strutbox` nach oben und die halbe Tiefe einer `\strutbox` nach unten verschoben werden, d.h. die `baseline` der Zeichnung muss gegenüber der Achse um die halbe Höhe einer `\strutbox` nach unten und die halbe Tiefe einer `\strutbox` nach oben wandern. Geht die Achse durch den Punkt `(0,0)` kann man das erreichen, in dem man sich entweder eine Koordinate `B` bei `(0,-.5\ht\strutbox+.5\dp\strutbox)` definiert und `baseline=(B)` verwendet oder aber, in dem man für `baseline` diese Verschiebung direkt angibt: `baseline=-.5*\ht\strutbox+.5*\dp\strutbox`. `baseline={-.5*\ht\strutbox+.5*\dp\strutbox}` ![alt text][3] \documentclass[12pt]{beamer} \usepackage{lmodern} \usepackage[utf8]{inputenc} \usepackage{tikz} \begin{document} \begin{frame} \begin{tabular}{rr} $(a,b) = \{x \in \mathbb{R} \mid a < x < b\}$ & \begin{tikzpicture}[line cap=round, line join=round, baseline=-.5*\ht\strutbox+.5*\dp\strutbox baseline={-.5*\ht\strutbox+.5*\dp\strutbox} ] \draw [->] (0,0) -- (4,0); \foreach \x/\y/\z in {1/(/$a$,3/)/$b$} \draw [shift={({\x},0)}] node {\y} node[below=7mm,anchor=base,font=\small] {\z}; \end{tikzpicture} \end{tabular} \end{frame} \end{document} Da die beiden Klammern `(` `)` hier nur als Nodetext dienen und nicht in Koordinatenangaben landen, kannst Du die geschweiften Klammern um diese runden Klammern hier weglassen. [1]: http://texwelt.de/wissen/upfiles/tw_tikztab.png [2]: http://texwelt.de/wissen/upfiles/tw_tikztab1.png [3]: http://texwelt.de/wissen/upfiles/tw_tikztab3.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 3

13 Feb '15, 16:28

esdd's gravatar image

esdd
17.8k304257

Bei `m`-Spalten werden die Inhalte der Tabellenzellen vertikal zentriert. Die Achse liegt allerdings nicht in der Mitte der Zeichnung, weshalb sie dann auch nicht vertikal mittig zur Formel ausgegeben wird. ![alt text][1] Deshalb sind `m`-Spalten hier nicht sinnvoll. Man könnte jetzt `X`-Spalten ohne die Umdefinition von `\tabularxcolumn` verwenden, da aber zum einen der Inhalt der Tabellenzellen einzeilig sein soll und zum anderen momentan die linke Tabellenspalte zu schmal ist - Du verwendest `\mbox` um den eigentlich nötigen Zeilenumbruch zu verhindern - ist es vermutlich sinnvoller zwei `r` Spalten zu nutzen. Damit würde dann die Zeichnung so ausgerichtet, dass sich die Koordinate `O` auf Höhe der Grundlinie der Matheformel befindet. Da `O` in dem Beispiel den Punkt `(0,0)` bezeichnet, kann man sogar nur einfach `baseline` statt `baseline=(O)` schreiben. ![alt text][2] Die Achse muss nun noch um die halbe Höhe einer `\strutbox` nach oben und die halbe Tiefe einer `\strutbox` nach unten verschoben werden, d.h. die `baseline` der Zeichnung muss gegenüber der Achse um die halbe Höhe einer `\strutbox` nach unten und die halbe Tiefe einer `\strutbox` nach oben wandern. Geht die Achse durch den Punkt `(0,0)` kann man das erreichen, in dem man sich entweder eine Koordinate `B` bei `(0,-.5\ht\strutbox+.5\dp\strutbox)` definiert und `baseline=(B)` verwendet oder aber, in dem man für `baseline` diese Verschiebung direkt angibt: `baseline=\dimexpr-.5\ht\strutbox+.5\dp\strutbox\relax`. `baseline=-.5*\ht\strutbox+.5*\dp\strutbox`. ![alt text][3] \documentclass[12pt]{beamer} \usepackage{lmodern} \usepackage[utf8]{inputenc} \usepackage{tikz} \begin{document} \begin{frame} \begin{tabular}{rr} $(a,b) = \{x \in \mathbb{R} \mid a < x < b\}$ & \begin{tikzpicture}[line cap=round, line join=round, baseline=\dimexpr-.5\ht\strutbox+.5\dp\strutbox\relax baseline=-.5*\ht\strutbox+.5*\dp\strutbox ] \draw [->] (0,0) -- (4,0); \foreach \x/\y/\z in {1/(/$a$,3/)/$b$} \draw [shift={({\x},0)}] node {\y} node[below=7mm,anchor=base,font=\small] {\z}; \end{tikzpicture} \end{tabular} \end{frame} \end{document} Da die beiden Klammern `(` `)` hier nur als Nodetext dienen und nicht in Koordinatenangaben landen, kannst Du die geschweiften Klammern um diese runden Klammern hier weglassen. [1]: http://texwelt.de/wissen/upfiles/tw_tikztab.png [2]: http://texwelt.de/wissen/upfiles/tw_tikztab1.png [3]: http://texwelt.de/wissen/upfiles/tw_tikztab3.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 2

13 Feb '15, 02:14

esdd's gravatar image

esdd
17.8k304257

Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

13 Feb '15, 01:57

esdd's gravatar image

esdd
17.8k304257