Avec TikZ, lors de la création d’un axe des abscisses avec des valeurs négatives, l’alignement de celle-ci se fait sur toute la largeur des caractères affichés. Avec la valeur -3, l’alignement se fait avec les deux caractères – et 3. D’où un décalage par rapport à la valeur numérique.
\begin{tikzpicture} \draw[->] (-5.5,0) -- (5.5,0); \foreach \x in {-5,...,-1}{ \draw (\x,0.1cm) -- (\x,-0.1cm) node[below] {\x}; } \foreach \x in {0,...,5}{ \draw (\x,0.1cm) -- (\x,-0.1cm) node[below] {\x}; } \end{tikzpicture}
Voici l’affichage obtenu :
Pour éviter ce « décalage », il suffit d’ajouter un fantôme sur le caractère -
, après l’affichage de la valeur numérique :
\draw (\x,0.1cm) -- (\x,-0.1cm) node[below] {\x\phantom{-}};
Cela permet d’ajouter un signe – invisible à droite de la valeur. Ainsi, l’alignement se fait par exemple sur les caractères -3-
.
Voici le code de l’exemple :
\begin{tikzpicture} \draw[->] (-5.5,0) -- (5.5,0); \foreach \x in {-5,...,-1}{ \draw (\x,0.1cm) -- (\x,-0.1cm) node[below] {\x\phantom{-}}; } \foreach \x in {0,...,5}{ \draw (\x,0.1cm) -- (\x,-0.1cm) node[below] {\x}; } \end{tikzpicture}
Voici l’affichage obtenu :
Si vous souhaitez ajouter un espace vertical supplémentaire entre les valeurs et l’axe, vous pouvez ajouter la commande \strut
. L’espace est proportionnel au contexte typographique local.
Voici le code complet de l’exemple :
\begin{tikzpicture} \draw[->] (-5.5,0) -- (5.5,0); \foreach \x in {-5,...,-1}{ \draw (\x,0.1cm) -- (\x,-0.1cm) node[below] {\x\phantom{-}\strut}; } \foreach \x in {0,...,5}{ \draw (\x,0.1cm) -- (\x,-0.1cm) node[below] {\x\strut}; } \end{tikzpicture}
Et voici l’affichage final obtenu :