\section{Macros pour les axes}

 \tkzHandBomb\ Attention ces macros ont été modifiées. Il est désormais plus faciles d'utiliser les stiles de \TIKZ\ . \tkzcname{tkzDrawX} permet de tracer un axe, \tkzcname{tkzLabelX} place des graduations et enfin dans les cas simples \tkzcname{tkzAxeX} trace et gradue. Les options de \TIKZ sont accessibles. 
Pour les graduations, il est possible d'utiliser des fractions.
%<--------------------------------------------------------------------->
%                  tkzDrawX
%<--------------------------------------------------------------------->
\subsection{\tkzcname{tkzDrawX}} \hypertarget{dx}{}
\begin{NewMacroBox}{tkzDrawX}{\oarg{local options}}
Cette macro permet de tracer l'axe des abscisses avec des ticks par défaut.
Les options sont celles de \TIKZ\ plus les suivantes~:

\medskip
\begin{tabular}{lll}
\toprule
options  & défaut & définition   \\
\midrule
\TOline{color}      {black}  {couleur de l'axe et des ticks}
\TOline{noticks}    {false}  {pas de ticks sur l'axe}
\TOline{right space}{0,5 cm} {prolongement de l'axe à droite}
\TOline{left space} {0 cm}   {prolongement de l'axe à gauche}
\TOline{label}      {$x$}    {nom attribué au label}
\TOline{trig}       {0}      {si <>0  pi/trig est l'unité}
\TOline{tickwd}     {0.8pt}  {épaisseur du tick}
\TOline{tickup}     {1pt}    {hauteur du tick au dessus de l'axe}
\TOline{tickdn}     {1pt}    {profondeur du tick en dessus de l'axe}
\bottomrule
\end{tabular}

\medskip
\begin{tikzpicture}[>=latex,scale=2]
  \draw[line width=2 pt](0,0)--(4,0);
  \draw[fill] (2cm-6pt,-14pt) rectangle (2cm+6pt,+14pt);
  \draw[<->](2cm-6.5pt,18pt) -- (2cm+6.5pt,+18pt);
  \node[above] at (2cm,20pt) {tickwd};
  \draw[<->](2cm+10pt,1pt) -- (2cm+10pt,+14pt);
  \node[right] at (2cm+10pt,8pt) {tickup};
  \draw[<->](2cm+10pt,-1pt) -- (2cm+10pt,-14pt);
  \node[right] at (2cm+10pt,-8pt) {tickdn};
\end{tikzpicture}

\medskip
{Cette macro permet de tracer l'axe des abscisses. Le plus important est de tester l'ensemble des options. Ci-dessus, vous avez les valeurs qui définissent un tick. Sinon les options de \TIKZ\ s'appliquent et en particulier \tkzname{text}, \tkzname{color}, \tkzname{fill} et \tkzname{font}. }
\end{NewMacroBox}

\subsubsection{Sans tick,ni label}
\begin{tkzexample}[latex=8cm,small]
\begin{tikzpicture}
 \tkzInit[xmax=5]
 \tkzDrawX[label={},noticks]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Placement du label}
\begin{tkzexample}[latex=8cm,small]
\begin{tikzpicture}
 \tkzInit[xmax=5]
 \tkzDrawX[label      = quantité,
           above left = 8pt]
\end{tikzpicture}
\end{tkzexample}


\subsubsection{Couleur du label et de l'axe}
La couleur du label est obtenue avec l'option \tkzname{text}, celle de l'axe avec  l'option \tkzname{color}.

L'option \tkzname{ right=12pt} décale le label $x$ de 12 pt.

\begin{tkzexample}[latex=8cm,small]
\begin{tikzpicture}
  \tkzInit[xmax=5]
  \tkzDrawX[text=blue,color=red,
           right=12pt]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Option \tkzname{right space}}
Cela ajoute un peu d'espace après le dernier tick.
\begin{tkzexample}[latex=7cm,small]
\begin{tikzpicture}
\tkzInit[xmax=0.4,xstep=0.1]
\tkzDrawX[text=blue,color=red,
          right=12pt,right space=1]
\end{tikzpicture}
\end{tkzexample}

 \subsubsection{Axe trigonométrique avec l'option \tkzname{trig=1}}\hypertarget{newm}{}
Si number=0 alors l'axe est gradué de cm en cm, sinon l'axe est gradué à l'aide des multiples de $\frac{\pi}{number}$

\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=0,xmax=4,ymin=-1,ymax=1]
  \tkzDrawX[trig=1]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Axe trigonométrique avec l'option \tkzname{trig=2} }

\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=0,xmax=4,ymin=-1,ymax=1]
  \tkzDrawX[trig=2]
\end{tikzpicture}
\end{tkzexample}

\newpage
%<--------------------------------------------------------------------->
%                  tkzLabelX
%<--------------------------------------------------------------------->
\subsection{\tkzcname{tkzLabelX}}\hypertarget{lx}{}
\begin{NewMacroBox}{tkzLabelX}{\oarg{local options}}
Cette macro permet de placer des graduations. L'option  \tkzname{orig} peut de nouveau être utilisée, mais son comportement est inversée. Par défaut, la valeur à l'origine est placée.
Les options sont celles de \TIKZ, plus les suivantes~:

\medskip
\begin{tabular}{lll}
\toprule
options  & défaut & définition   \\
\midrule
\TOline{frac}     {0}{si <>0  graduations = num/frac "frac est un entier"}
\TOline{trig}     {0}{si <>0  pi/trig "trig est un entier"}
\TOline{font} {\BS textstyle} { taille de la graduation.}
\TOline{color}  {black} {couleur des graduations}
\TOline{step}  {1} {intervalle entre deux  graduations}
\TOline{np off}  {false} {désactivation de numprint}
\TOline{orig}  {true} {affiche la graduation de l'origine}
\bottomrule
\end{tabular}

{\tkzname{frac} et \tkzname{trig} sont des nombres entiers permettant de passer à une écriture fractionnaire ou trigonométrique.}
\end{NewMacroBox}

\subsubsection{Position des graduations}
\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
\tkzInit[xmax=.5,xstep=0.1]
\tkzDrawX[label=$t$,text=blue,color=red]
\tkzLabelX[text=blue,below = 3pt]
\end{tikzpicture}
\end{tkzexample}


\subsubsection{Position des graduations avec \tkzname{xlabel style}}
\begin{tkzexample}[latex=5cm,small]
\begin{tikzpicture}
 \tkzInit[xmin=1000,xmax=4000,xstep=1000]
 \tkzDrawX
 \tikzset{xlabel style/.append style={rotate=-30}}
 \tkzLabelX[below right=3 pt,inner sep = 1pt]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Dates avec \tkzname{np off}}
Pour les dates, il faut désactiver numprint.
\begin{tkzexample}[latex=5cm,small]
\begin{tikzpicture}
 \tkzInit[xmin=2000,xmax=2004]
 \tkzDrawX
 \tikzset{xlabel style/.append style={rotate=-30}}
 \tkzLabelX[np off,below right=3 pt,inner sep =1pt]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{\tkzname{frac}}
\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
\tkzInit[xmax=1.75,xstep=0.33333]
\tkzDrawX[label=$t$,text=blue,color=red]
\tkzLabelX[frac=3,text=blue,below = 6pt]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{\tkzname{trig}}
\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=0,xmax=5,ymin=-1,ymax=1]
  \tkzDrawX[trig=2]
  \tkzLabelX[trig=2,text=blue,below = 8pt]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Taille des graduations}
Deux possibilités. Il est possible de définir le style employé par défaut pour le mode math :

\begin{tkzltxexample}[small]
\let\tkzmathstyle\textstyle
\end{tkzltxexample}

\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=0,xmax=5,ymin=-1,ymax=1]
  \tkzDrawX[trig=2]
  \tkzLabelX[trig=2,text=blue,below = 8pt]
\end{tikzpicture}
\end{tkzexample}

\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=0,xmax=5,ymin=-1,ymax=1]
  \let\tkzmathstyle\textstyle
  \tkzDrawX[trig=2]
  \tkzLabelX[trig=2,text=blue,
            below = 8pt]
\end{tikzpicture}
\end{tkzexample}

\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=0,xmax=5,ymin=-1,ymax=1]
  \tkzDrawX[trig=2]
  \tkzLabelX[trig=2,text=blue,
           below = 8pt,node font=\small]
\end{tikzpicture}
\end{tkzexample}

\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=0,xmax=5,ymin=-1,ymax=1]
  \tkzDrawX[trig=2]
  \tkzLabelX[trig=2,text=blue,
      below = 8pt,node font=\scriptsize]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Couleur des graduations}
Il s'agit ici de bien utiliser les options \tkzname{color}, \tkzname{text} et \tkzname{fill}
\begin{tkzexample}[latex=7cm,small]
\begin{tikzpicture}
  \tkzInit[xmin = -2,xmax = 3,
           ymin = -2,ymax = 2]
 \tkzDrawX[color = red,
           label = $\displaystyle\frac{1}{t}$,
           below = 6pt]
 \tkzLabelX[text=blue]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Tracés des axes avant la graduation}
Dans certains cas, il est préférable de placer  \tkzcname{tkzDrawXY} après \tkzcname{tkzLabelX} et \tkzcname{tkzLabelY}. 

Cela permet d'éviter des problèmes d'affichage.


\begin{tkzexample}[latex=7cm,small]
\begin{tikzpicture}
\tkzInit[xmin = -1,xmax = 4,
         ymin = -1,ymax = 1]
\tkzDrawXY \tkzLabelX  \tkzLabelY
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Graduations (exceptées à l'origine) avant les tracés  }

\begin{tkzexample}[latex=7cm,small]
\begin{tikzpicture}
   \tkzInit[xmin = -1,xmax = 4,
            ymin = -1,ymax = 1]
   \tkzLabelX[orig=false] 
   \tkzLabelY[orig=false]
   \tkzDrawXY
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Graduations uniquement positives  avant les tracés }

\begin{tkzexample}[latex=7cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=2,ymin=2,xmax=4,ymax=4]
  \tkzLabelX \tkzLabelY
  \tkzDrawXY
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Pas de graduations à l'origine }

\begin{tkzexample}[latex=7cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=2,ymin=2,xmax=4,ymax=4]
  \tkzLabelX[orig]    \tkzLabelY[orig]
  \tkzDrawXY
\end{tikzpicture}
\end{tkzexample}
%<--------------------------------------------------------------------->
%                  tkzAxeX
%<--------------------------------------------------------------------->
\subsection{\tkzcname{tkzAxeX}}\hypertarget{ax}{}
\begin{NewMacroBox}{tkzAxeX}{\oarg{local options}}
Cette macro permet de tracer l'axe des abscisses avec des ticks par défaut ainsi que les graduations. Elle combine les deux macros \tkzcname{tkzDrawX} et \tkzcname{tkzLabelX}. Elle doit être utilisée que dans les cas simples. 

\medskip
\begin{tabular}{lll}
\toprule
options  & défaut & définition   \\
\midrule
\TOline{label} {$x$}{nom attribué au label}
\TOline{trig} {0}{graduation fraction de $\pi$}
\TOline{frac} {0}{graduation fractionnaire, de dénominateur « frac »}
\TOline{swap} {false}{permet de lancer \tkzcname{tkzLabelX} avant \tkzcname{tkzDrawX}}
\bottomrule
\end{tabular}

{\tkzname{text} définit la couleur des graduations.}
\end{NewMacroBox}

\subsubsection{exemple avec \tkzcname{tkzAxeX}}
\begin{tkzexample}[latex=7cm,small]
\begin{tikzpicture}
   \tkzInit[xmax=0.5,xstep=0.1,ymax=1]
   \tkzGrid
   \tkzAxeX[text=blue]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Usage de \tkzname{pi} et \tkzcname{tkzAxeX}}
\begin{tkzexample}[latex=5cm,small]
\begin{tikzpicture}
  \tkzInit[xmax=4,ymax=3.5]
  \let\tkzmathstyle\displaystyle
  \tkzLabelX[orig  = false, frac  = 4,below = 10pt]
  \tkzDrawX[label = $t$]
  \tkzAxeY[trig=2]
\end{tikzpicture}
\end{tkzexample}


\subsubsection{Option \tkzname{frac} et \tkzname{trig}}
Dans cet exemple, on positionne le label $t$ ainsi que les graduations.  \tkzcname{below=10pt} sert à placer les graduations en-dessous.
\begin{tkzexample}[latex=5cm,small]
\begin{tikzpicture}
  \tkzInit[xmax=9,xstep=3,ymax=3.5]
  \tkzLabelX[below=10pt,orig=false,frac=3]
  \tkzDrawX[label = $t$]
  \tkzAxeY[trig=2]
\end{tikzpicture}
\end{tkzexample}

%<--------------------------------------------------------------------->
%                  tkzDrawY
%<--------------------------------------------------------------------->
\subsection{\tkzcname{tkzDrawY}} \hypertarget{dy}{}
\begin{NewMacroBox}{tkzDrawY}{\oarg{local options}}
Cette macro permet de tracer l'axe des ordonnées avec des ticks par défaut.
Les options sont celles de \TIKZ\ plus les suivantes~:

\medskip
\begin{tabular}{lll}
\toprule
options  & défaut & définition   \\
\midrule
\TOline{color}      {black} {couleur de l'axe et des ticks}
\TOline{noticks}    {false} {pas de ticks sur l'axe}
\TOline{up space}   {0,5 cm} {prolongement de l'axe en haut}
\TOline{down space} {0 cm}{prolongement de l'axe en bas}
\TOline{label}      {$x$}{nom attribué au label}
\TOline{trig}       {0}{si <>0  pi/trig est l'unité}
\TOline{tickwd}     {0.8pt}{épaisseur du tick}
\TOline{ticklt}     {1pt}{hauteur du tick au dessus de l'axe}
\TOline{tickrt}     {1pt}{profondeur du tick en dessus de l'axe}
\end{tabular}
\end{NewMacroBox}

\subsection{\tkzcname{tkzLabelY}} \hypertarget{ly}{}
\begin{NewMacroBox}{tkzLabelY}{\oarg{local options}}
Cette macro permet de tracer l'axe des abscisses avec des ticks par défaut.
Les options sont celles de \TIKZ\ plus les suivantes~:

\medskip
\begin{tabular}{lll}
\toprule
options  & défaut & définition   \\
\midrule
\TOline{color}  {black} {couleur des graduations}
\TOline{frac} {0}{si <>0 les graduations sont des fractions dénominateur=frac}
\TOline{font} {\BS textstyle} { taille de la graduation.}
\TOline{step}  {1} {intervalle entre deux  graduations}
\bottomrule
\end{tabular}

{\tkzname{frac} et \tkzname{trig} sont des nombres entiers permettant de passer à une écriture fractionnaire ou trigonométrique.}
\end{NewMacroBox}

%<--------------------------------------------------------------------->
%                  tkzAxeY
%<--------------------------------------------------------------------->
\subsection{\tkzcname{tkzAxeY}}\hypertarget{ay}{}
\begin{NewMacroBox}{tkzAxeY}{\oarg{local options}}
Cette macro combine les deux macros :
\tkzcname{tkzDrawY} \tkzcname{tkzLabelY}
Voir \tkzcname{tkzAxeX} pour les options
\end{NewMacroBox}
%<--------------------------------------------------------------------->
%                  tkzAxeXY
%<--------------------------------------------------------------------->
\subsection{\tkzcname{tkzAxeXY}}  \hypertarget{axy}{}
\begin{NewMacroBox}{tkzAxeXY}{\oarg{local options}}
Cette macro combine les quatre macros :
\tkzcname{tkzDrawX}\tkzcname{tkzDrawY} \tkzcname{tkzLabelX}\tkzcname{tkzLabelY}

{Il est nécessaire d'utiliser des options communes comme dans l'exemple ci-dessous, mais cela signifie que les mêmes options sont appliquées aux deux macros. Ainsi il n'est pas possible de modifier \tkzname{label}}
\end{NewMacroBox}

\subsubsection{Couleur des axes, des graduations}

\begin{tkzexample}[latex=6cm]
\begin{tikzpicture}
  \tkzInit[xmin=-1,xmax=4,ymin=-1,ymax=3]
  \tkzAxeXY[label={},text=blue]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Option \tkzname{\{label=\{\}\}}}

\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=-1,xmax=4,ymin=-1,ymax=2]
  \tkzAxeXY[label={},text=blue,trig=2]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Option \tkzname{swap}}
\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
\tkzInit[xmin=-2,xmax=2,ymin=-2,ymax=2]
\tkzAxeXY[label={},swap]
\end{tikzpicture}
\end{tkzexample}
%<--------------------------------------------------------------------->
%                  tkzDrawXY
%<--------------------------------------------------------------------->
\subsection{\tkzcname{tkzDrawXY}}  \hypertarget{dxy}{}
\begin{NewMacroBox}{tkzDrawXY}{\oarg{local options}}
Cette macro combine les deux macros :
\tkzcname{tkzDrawX}\tkzcname{tkzDrawY}

{Il est nécessaire d'utiliser des options communes comme dans l'exemple ci-dessous}
\end{NewMacroBox}

\subsubsection{Couleur commune et labels vides}
\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
   \tkzInit[xmin=-1,xmax=4,ymin=-1,ymax=1]
   \tkzDrawXY[label={},color=red]
\end{tikzpicture}
\end{tkzexample}

\subsubsection{Deux axes trigonométriques}
\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=-1,xmax=4,ymin=-1,ymax=2]
  \tkzDrawXY[label={},color=red,trig=4]
\end{tikzpicture}
\end{tkzexample}
%<--------------------------------------------------------------------->
%                  tkzLabelXY
%<--------------------------------------------------------------------->
\subsection{\tkzcname{tkzLabelXY}}  \hypertarget{lxy}{}
\begin{NewMacroBox}{tkzLabelXY}{\oarg{local options}}
Cette macro combine les deux macros :

 \tkzcname{tkzLabelX}\tkzcname{tkzLabelY}

{Il est nécessaire d'utiliser des options communes comme dans l'exemple ci-dessous}
\end{NewMacroBox}

\subsubsection{}
\begin{tkzexample}[latex=6cm,small]
\begin{tikzpicture}
  \tkzInit[xmin=-1,xmax=4,ymin=-1,ymax=1]
  \tkzDrawXY[label={},color=red]
  \tkzLabelXY[text=blue]
\end{tikzpicture}
\end{tkzexample}

%<--------------------------------------------------------------------->
%                  tkzSetUpAxis
%<--------------------------------------------------------------------->
\subsection{Modifier les valeurs par des défauts des axes} \hypertarget{axis}{}

\begin{NewMacroBox}{tkzSetUpAxis}{\oarg{local options}}

\medskip
\begin{tabular}{lll}
\toprule
options  & défaut & définition   \\
\midrule
\TOline{line width}{|0.4pt|}{line width définit la largeur du trait}
\TOline{tickwd}{|0.8pt|}{épaisseur du tick  }
\TOline{ticka}{|1pt|}{partie droite ou au dessus du tick  }
\TOline{tickb}{|1pt|}{partie gauche ou en dessous du tick  }
\TOline{font}{|\tkzcname{textstyle}|}{taille de la graduation.}
\bottomrule
\end{tabular}
\end{NewMacroBox}

\subsubsection{Modification des axes par défaut}

\begin{tkzexample}[latex=6cm,small]
 \begin{tikzpicture}[scale=1]
  \tkzInit[ymax=2,xmax=4]
  \tkzSetUpAxis[line width=1pt,tickwd=1pt,
                     ticka=3pt, tickb=0pt]
  \tkzAxeXY
 \end{tikzpicture}
\end{tkzexample}

Il faut lancer de nouveau \tkzcname{tkzSetUpAxis } pour récupérer les valeurs par défaut.

\medskip
\begin{tkzltxexample}[small]
\tkzSetUpAxis[line width=1pt,tickwd=1pt,ticka=2pt,tickb=2pt]
\end{tkzltxexample}

\tkzSetUpAxis[line width=1pt,tickwd=1pt,ticka=2pt,tickb=2pt]

\endinput
