PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : tikz: Label Position



atero
10-02-2010, 14:25
Hallo,
ich zeichne mit tikz zwei Intervalle:

\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw[|-|] (0,0) -- (1,0);
\draw (1,0) node[below] {$b$};
\draw[|-|] (1.5,0) -- (2.5,0);
\draw (1.5, 0) node[below] {$a$};
\end{tikzpicture}
\end{document}
Nun befinden sich die Labels "a" und "b" auf unterschiedlicher Höhe, was finde ich unschön aussieht. Ich könnte die Labels natürlich irgendwie von Hand verschieben und so ungefähr auf die gleiche Höhe bringen. Das ist ja aber keine besonders elegante Lösung. Hat vielleicht jemand eine bessere Idee?

Viele Grüße
atero

Nachtrag: Wenn ich die Labels oberhalb setze, also mit node[above], dann tritt das Problem nicht auf. Da aber über den Intervallen etwas stehen soll, hätte ich die Labels schon gerne wie angegeben unterhalb der Linien.

esdd
10-02-2010, 14:53
Hallo,

Du kannst hinter das a ein \vphantom{b} hängen:



\documentclass{article}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
\draw[|-|] (0,0) -- (1,0)node[below] {$b$};
\draw[|-|] (1.5,0)node[below] {$a\vphantom{b}$} -- (2.5,0);
\end{tikzpicture}

\end{document}


Gruß
Elke

esdd
10-02-2010, 15:41
Hallo,

eine Alternative ist noch die Option text height für den Text in einer Node:



\documentclass{article}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}[beschr/.style={below,text height=8pt}]
\draw[|-|] (0,0) -- (1,0)node[beschr] {$b$};
\draw[|-|] (1.5,0)node[beschr] {$a$} -- (2.5,0);
\end{tikzpicture}

\end{document}

atero
10-02-2010, 16:32
Hi Elke,

vielen Dank!!