<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">% !TeX TXS-program:compile = txs:///arara
% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode}
% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)')

\documentclass[11pt,a4paper]{ltxdoc}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{tkz-grapheur}
\pgfplotsset{compat=newest}
\usepackage{alphalph}
\usepackage{amsmath}
\usepackage{enumitem}
\usepackage{fancyvrb}
\usepackage{fancyhdr}
\usepackage{hyperref}
\usepackage{nicefrac}
\usepackage{fontawesome5}
\usepackage{tcolorbox}
\usepackage{minted2}
\tcbuselibrary{skins,minted}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\lfoot{\sffamily\small [tkz-grapheur]}
\rfoot{\sffamily\small - \thepage{} -}
\usepackage{hologo}
\providecommand\tikzlogo{Ti\textit{k}Z}
\providecommand\TeXLive{\TeX{}Live\xspace}
\providecommand\PSTricks{\textsf{PSTricks}\xspace}
\let\pstricks\PSTricks
\let\TikZ\tikzlogo

\urlstyle{same}
\hypersetup{pdfborder=0 0 0}
\usepackage[margin=2cm]{geometry}
\setlength{\parindent}{0pt}
\def\TPversion{0.2.0}
\def\TPdate{29/10/2024}
\usepackage{soul}
\usepackage{codehigh}
\usepackage{tabularray}
\sethlcolor{lightgray!25}
\NewDocumentCommand\MontreCode{ m }{%
	\hl{\vphantom{\texttt{pf}}\texttt{#1}}%
}
\usepackage[french]{babel}
\sisetup{group-minimum-digits=4}
\renewcommand{\footnoterule}{\vfill\kern -3pt \hrule width 0.4\columnwidth \kern 2.6pt}

\begin{document}

\pagestyle{fancy}

\thispagestyle{empty}

\begin{center}
	\begin{minipage}{0.88\linewidth}
	\begin{tcolorbox}[colframe=yellow,colback=yellow!15]
		\begin{center}
			\begin{tabular}{c}
				{\Huge \texttt{tkz-grapheur [fr]}}\\
				\\
				{\LARGE Un systĂ¨me de grapheur,}\\
				\\
				{\LARGE basĂŠ sur \textsf{\TikZ} et \textsf{xint}.}\\
				\\
				{\small \texttt{Version \TPversion{} -- \TPdate}}
		\end{tabular}
		\end{center}
	\end{tcolorbox}
\end{minipage}
\end{center}

\begin{center}
	\begin{tabular}{c}
	\texttt{CĂŠdric Pierquet}\\
	{\ttfamily c pierquet -- at -- outlook . fr}\\
	\texttt{\url{https://forge.apps.education.fr/pierquetcedric/package-latex-tkz-grapheur}} \\
\end{tabular}
\end{center}

\hrule

\vfill

\begin{tcolorbox}[colframe=lightgray,colback=lightgray!5,halign=center]
\begin{GraphiqueTikz}[x=0.85cm,y=0.35cm,Xmin=0,Xmax=10,Ymin=0,Ymax=16]
	%prĂŠparation de la fenĂŞtre
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{0,1,...,10}{0,2,...,16}
	%dĂŠf des fonctions avec nom courbe + nom fonction + expression
	\DefinirCourbe[Nom=cf]&lt;f&gt;{3*x-6}
	\DefinirCourbe[Nom=cg]&lt;g&gt;{-(x-6)^2+12}
	%antĂŠcĂŠdents et intersection
	\TrouverIntersections[Aff=false,Nom=K]{cf}{cg}
	\TrouverAntecedents[AffDroite,Couleur=orange,Nom=I]{cg}{8}
	\TrouverAntecedents[Aff=false,Nom=J]{cg}{0}
	%intĂŠgrale sous une courbe, avec intersection
	\TracerIntegrale%
	[Couleurs=blue/purple,Bornes=noeuds,Style=hachures,Hachures=bricks]%
		{g(x)}%
		{(I-2)}{(J-2)}
	%intĂŠgrale entre les deux courbes
	\TracerIntegrale[Bornes=noeuds,Type=fct/fct]{f(x)}[g(x)]{(K-1)}{(K-2)}
	%tracĂŠ des courbes et des points
	\TracerCourbe[Couleur=red]{f(x)}
	\TracerCourbe[Couleur=teal]{g(x)}
	\PlacerPoints&lt;\small&gt;{(K-1)/below right/L,(K-2)/above left/M}%
	\PlacerPoints[violet]&lt;\small&gt;{(I-1)/above left/D,(I-2)/above right/E}%
	%essai de tangente
	\TracerTangente[Couleurs=pink!75!black/yellow,kl=2,kr=2,AffPoint]{g}{5}
	%essai d'image
	\PlacerImages[Couleurs=cyan]{g}{7,7.25,7.5}
	%surimpression des axes
	\TracerAxesGrilles[Grads=false,Grille=false,Elargir=2.5mm]{0,1,...,10}{0,2,...,16}
\end{GraphiqueTikz}
\end{tcolorbox}

\vspace*{5mm}

\begin{tcolorbox}[colframe=lightgray,colback=lightgray!5,halign=center]
\begin{GraphiqueTikz}%
	[x=3.5cm,y=4cm,
	Xmin=0,Xmax=3.5,Xgrille=pi/12,Xgrilles=pi/24,
	Ymin=-1.05,Ymax=1.05,Ygrille=0.2,Ygrilles=0.05]
	%prĂŠparation de la fenĂŞtre
	\TracerAxesGrilles[Grads=false,Elargir=2.5mm,Format=ntrig/nsqrt]%
	{pi/6,pi/4,pi/3,pi/2,2*pi/3,3*pi/4,5*pi/6,pi}
	{0,sqrt(2)/2,1/2,sqrt(3)/2,1,-1,-sqrt(3)/2,-1/2,-sqrt(2)/2}
	%rajouter des valeurs
	\RajouterValeursAxeX{0.25,1.4,3.3}{\num{0.25},\num{1.4},\num{3.3}}
	%fonction trigo (dĂŠf + tracĂŠ)
	\DefinirCourbe[Nom=ccos,Debut=0,Fin=pi]&lt;fcos&gt;{cos(x)}
	\DefinirCourbe[Nom=csin,Debut=0,Fin=pi]&lt;fsin&gt;{sin(x)}
	%intĂŠgrale
	\TrouverIntersections[Aff=false,Nom=JKL]{ccos}{csin}
	%\DefinirPts{FIN/pi/0}
	\TracerIntegrale%
	[Bornes=noeud/abs,Type=fct/fct,Couleurs=cyan/cyan!50]%
		{fsin(x)}[fcos(x)]%
		{(JKL-1)}{pi}
	%tracĂŠ des courbes
	\TracerCourbe[Couleur=red,Debut=0,Fin=pi]{fcos(x)}
	\TracerCourbe[Couleur=olive,Debut=0,Fin=pi]{fsin(x)}
	%antĂŠcĂŠdent(s)
	\PlacerAntecedents[Couleurs=blue/teal!50!black,Traits]{ccos}{-0.25}
	\PlacerAntecedents[Couleurs=red/magenta!50!black,Traits]{csin}{0.5}
	\PlacerAntecedents[Couleurs=orange/orange!50!black,Traits]{csin}{sqrt(2)/2}
	\PlacerAntecedents[Couleurs=green!50!black/green,Traits]{csin}{sqrt(3)/2}
	%surimpression axes
	\TracerAxesGrilles[Grille=false,Elargir=2.5mm,Format=ntrig/nsqrt]%
	{pi/6,pi/4,pi/3,pi/2,2*pi/3,3*pi/4,5*pi/6,pi}
	{0,sqrt(2)/2,1/2,sqrt(3)/2,1,-1,-sqrt(3)/2,-1/2,-sqrt(2)/2}
\end{GraphiqueTikz}
\end{tcolorbox}

\vfill

\hfill{\footnotesize\textit{\ttfamily Ă mon papa.}}

\vspace*{5mm}

\pagebreak

\phantomsection

\hypertarget{matoc}{}

\tableofcontents

\vspace*{5mm}

\hrule

\vspace*{5mm}

\pagebreak

\section{Introduction}

\subsection{Description et idĂŠes gĂŠnĂŠrales}

Avec ce modeste package, loin des capacitĂŠs offertes par exemple par les excellents packages \MontreCode{pgfplots}\footnote{CTAN : \url{https://ctan.org/pkg/pgfplots}}, \MontreCode{tkz-*}\footnote{par exemple tkz-base \url{https://ctan.org/pkg/tkz-base} et tkz-fct \url{https://ctan.org/pkg/tkz-fct}.} (d'Alain Matthes) ou \MontreCode{tzplot}\footnote{CTAN :  \url{https://ctan.org/pkg/tzplot}.} (de In-Sung Cho), il est possible de travailler sur des graphiques de fonctions, en langage \TikZ, de maniĂ¨re \textit{intuitive} et \textit{explicite}.

\smallskip

Concernant le fonctionnement global :

\smallskip

\begin{itemize}
	\item des styles particuliers pour les objets utilisĂŠs ont ĂŠtĂŠ dĂŠfinis (modifiables localement) ;
	\item le nom des commandes est sous forme \textit{opĂŠrationnelle}, de sorte que la construction des ĂŠlĂŠments graphiques a une forme quasi \textit{algorithmique}.
\end{itemize}

\subsection{Fonctionnement global}

Pour schĂŠmatiser, il \textit{suffit} :

\smallskip

\begin{itemize}
	\item de dĂŠclarer les paramĂ¨tres de la fenĂŞtre graphique ;
	\item d'afficher grille/axes/graduations ;
	\item de dĂŠclarer les fonctions ou les courbes d'interpolation ;
	\item de dĂŠclarer ĂŠventuellement des points particuliers ;
	\item de placer un nuage de points.
\end{itemize}

\smallskip

Il sera ensuite possible :

\begin{itemize}
	\item de tracer des courbes ;
	\item de dĂŠterminer graphiquement des images ou des antĂŠcĂŠdents ;
	\item de rajouter des ĂŠlĂŠments de dĂŠrivation (tangentes) ou d'intĂŠgration (domaine) ;
	\item de tracer une droite d'ajustement linĂŠaire ou la courbe d'un autre ajustement ;
	\item \dots
\end{itemize}

\subsection{Packages utilisĂŠs, et options du package}

Le package utilise :

\smallskip

\begin{itemize}
	\item \MontreCode{tikz}, avec les librairies \MontreCode{calc,intersections,patterns,patterns.meta,bbox} ;
	\item \MontreCode{simplekv}, \MontreCode{xintexpr}, \MontreCode{xstring}, \MontreCode{listofitems} ;
	\item \MontreCode{pgfplots}, avec la librairie \MontreCode{fillbetween} (dĂŠsactivable via \MontreCode{[nonpgfplots]}) ;
	\item \MontreCode{xint-regression}\footnote{CTAN : \url{https://ctan.org/pkg/xint-regression}.} (pour les rĂŠgressions, dĂŠsactivable via \MontreCode{[nonxintreg]}).
\end{itemize}

\smallskip

Le package charge ĂŠgalement \MontreCode{siunitx} avec les options classiques \texttt{[fr]}, mais il est possible de ne pas le charger en utilisant l'option \MontreCode{[nonsiunitx]}.

\pagebreak

\subsection{Chargement du package}

Le package charge ĂŠgalement la librairie \TikZ\ \MontreCode{babel}, mais il est possible de ne pas la charger en utilisant l'option \MontreCode{[nontikzbabel]}.

\smallskip

Les diffĂŠrentes options sont bien ĂŠvidemment cumulables.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%chargement par dĂŠfaut
\usepackage{tkz-grapheur}

%chargement sans sinuitx, Ă&nbsp; charger manuellement
\usepackage[nonsiunitx]{tkz-grapheur}

%chargement sans tikz.babel
\usepackage[nontikzbabel]{tkz-grapheur}

%chargement sans pgfplots + options compat
\usepackage[nonpgfplots]{tkz-grapheur}
\pgfplotsset{compat=...}
\end{tcblisting}

Ă noter ĂŠgalement que certaines commandes peuvent utiliser des packages comme \MontreCode{nicefrac}, qui sera donc Ă&nbsp; charger le cas ĂŠchĂŠant.

\smallskip

Concernant la partie \textit{calculs} et \textit{tracĂŠs}, c'est le package \MontreCode{xint} qui s'en occupe.

\subsection{Avertissements}

Il est possible, dĂť aux calculs (multiples) effectuĂŠs en interne, que le temps de compilation soir un peu \textit{allongĂŠ}.

\smallskip

La prĂŠcision des rĂŠsultats (de dĂŠtermination) semble ĂŞtre aux environs de $10^{-4}$, ce qui devrait normalement garantir des tracĂŠs et lectures \textit{satisfaisantes}. Il est quand mĂŞme conseillĂŠ d'ĂŞtre prudent quant aux rĂŠsultats obtenus et ceux attendus.

\pagebreak

\subsection{Exemple introductif}

On peut par exemple partir de l'exemple suivant, pour \textit{illustrer} le cheminement des commandes de ce package. Les commandes et la syntaxe seront dĂŠtaillĂŠes dans les sections suivantes !

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=10cm,y=10cm,Xmin=0,Xmax=1.001,Xgrille=0.1,Xgrilles=0.02,
	Ymin=0,Ymax=1.001,Ygrille=0.1,Ygrilles=0.02]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]%
		{0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1}
		{0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1}
	\DefinirCourbe[Nom=cf,Debut=0,Fin=1]&lt;f&gt;{x*exp(x-1)}
	\DefinirCourbe[Nom=delta,Debut=0,Fin=1]&lt;D&gt;{x}
	\TracerIntegrale[Type=fct/fct]{f(x)}[D(x)]{0}{1}
	\TracerCourbe[Couleur=red]{f(x)}
	\TracerCourbe[Couleur=teal]{D(x)}
	\PlacerImages[Couleurs=blue/cyan,Traits]{f}{0.8,0.9}
	\PlacerAntecedents[Couleurs=green!50!black/olive,Traits]{cf}{0.5}
\end{GraphiqueTikz}
\end{tcblisting}

\newpage

\section{Styles de base et crĂŠation de l'environnement}

\subsection{Styles de base}

Les styles utilisĂŠs pour les tracĂŠs sont donnĂŠs ci-dessous.

\smallskip

Dans une optique de \textit{simplicitĂŠ}, seule la couleur des ĂŠlĂŠments peut ĂŞtre paramĂŠtrĂŠe, mais si l'utilisateur le souhaite, il peut redĂŠfinir les styles proposĂŠs.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%paramĂ¨tres dĂŠclarĂŠs et stockĂŠs (utilisables dans l'environnement a posteriori)
\tikzset{
	Xmin/.store in=\pflxmin,Xmin/.default=-3,Xmin=-3,
	Xmax/.store in=\pflxmax,Xmax/.default=3,Xmax=3,
	Ymin/.store in=\pflymin,Ymin/.default=-3,Ymin=-3,
	Ymax/.store in=\pflymax,Ymax/.default=3,Ymax=3,
	Origx/.store in=\pflOx,Origx/.default=0,Origx=0,
	Origy/.store in=\pflOy,Origy/.default=0,Origy=0,
	Xgrille/.store in=\pflgrillex,Xgrille/.default=1,Xgrille=1,
	Xgrilles/.store in=\pflgrillexs,Xgrilles/.default=0.5,Xgrilles=0.5,
	Ygrille/.store in=\pflgrilley,Ygrille/.default=1,Ygrille=1,
	Ygrilles/.store in=\pflgrilleys,Ygrilles/.default=0.5,Ygrilles=0.5
}
\end{tcblisting}

On retrouve donc :

\smallskip

\begin{itemize}
	\item l'origine du repĂ¨re (\MontreCode{Origx}/\MontreCode{Origy}) ;
	\item les valeurs extrĂŞmes des axes (\MontreCode{Xmin}/\MontreCode{Xmax}/\MontreCode{Ymin}/\MontreCode{Ymax}) ;
	\item les paramĂ¨tres des grilles principales et secondaires (\MontreCode{Xgrille}/\MontreCode{Xgrilles}/\MontreCode{Ygrille}/\MontreCode{Ygrilles}).
\end{itemize}

\smallskip

Concernant les styles des \textit{objets}, ils sont donnĂŠs ci-dessous.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%styles grilles/axes
\tikzset{pflgrillep/.style={thin,lightgray}}
\tikzset{pflgrilles/.style={very thin,lightgray}}
\tikzset{pflaxes/.style={line width=0.8pt,-&gt;,&gt;=latex}}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%style des points (courbe / nuage /labels / montecarlo)
\tikzset{pflpoint/.style={line width=0.95pt}}
\tikzset{pflpointc/.style={radius=1.75pt}}
\tikzset{pflpointnuage/.style={radius=1.75pt}}
\tikzset{pflpointmc/.style={radius=0.875pt}}
\tikzset{pflnoeud/.style={}} %pour les inner sep par exemple :-)
\tikzset{pflcourbediscont/.style={line width=1.1pt}}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%style des courbes
\tikzset{pflcourbe/.style={line width=1.05pt}}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%style des traits (normaux, antĂŠcĂŠdents, images)
\tikzset{pfltrait/.style={line width=0.8pt}}
\tikzset{pfltraitantec/.style={line width=0.95pt,densely dashed}}
\tikzset{pfltraitimg/.style={line width=0.95pt,densely dashed,-&gt;,&gt;=latex}}

%style des flĂ¨ches
\tikzset{pflflecheg/.style={&lt;-,&gt;=latex}}
\tikzset{pflfleched/.style={-&gt;,&gt;=latex}}
\tikzset{pflflechegd/.style={&lt;-&gt;,&gt;=latex}}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%style des constructions ECC (courbe / paramĂ¨tres)
\tikzset{pfltraitsparamecc/.style={line width=0.9pt,densely dashed}}
\tikzset{pflcourbeecc/.style={line width=1.05pt}}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%style des constructions rĂŠcurrence
\tikzset{pfltraitrec/.style={line width=0.8pt}}
\tikzset{pfltraitrecpointill/.style={pfltraitrec,densely dashed}}
\end{tcblisting}

L'idĂŠe est donc de pouvoir redĂŠfinir globalement ou localement les styles, et ĂŠventuellement de rajouter des ĂŠlĂŠments, en utilisant \mintinline{latex}|monstyle/.append style={...}|.

\subsection{CrĂŠation de l'environnement}\label{creaenvt}

L'environnement proposĂŠ est basĂŠ sur \TikZ, de sorte que toute commande \textit{classique} liĂŠe Ă&nbsp; \TikZ\ peut ĂŞtre utilisĂŠe en marge des commandes du package !

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
\begin{GraphiqueTikz}[options tikz]&lt;clĂŠs&gt;
	%code(s)
\end{GraphiqueTikz}
\end{tcblisting}

Les \MontreCode{[options tikz]} sont les options \textit{classiques} qui peuvent ĂŞtre passĂŠes Ă&nbsp; un environnement \TikZ, ainsi que les clĂŠs des \textsf{axes/grilles/fenĂŞtre} prĂŠsentĂŠes prĂŠcĂŠdemment.

\smallskip

Les \MontreCode{&lt;clĂŠs&gt;} spĂŠcifiques (et optionnelles) sont :

\smallskip

\begin{itemize}
	\item \MontreCode{TailleGrad} : taille des graduations des axes (\MontreCode{3pt} pour 3pt \textit{dessus} et 3pt \textit{dessous}) ;
	\item \MontreCode{AffCadre} : boolĂŠen (\MontreCode{false} par dĂŠfaut) pour afficher un cadre qui dĂŠlimite la fenĂŞtre graphique (hors graduations ĂŠventuelles).
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}
	[x=0.075cm,y=0.03cm,Xmin=0,Xmax=160,Xgrille=20,Xgrilles=10,
	Origy=250,Ymin=250,Ymax=400,Ygrille=25,Ygrilles=5]
	&lt;AffCadre&gt;
\end{GraphiqueTikz}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.9cm,y=0.425cm,Xmin=4,Xmax=20,Origx=4,
	Ymin=40,Ymax=56,Ygrille=2,Ygrilles=1,Origy=40]
	&lt;AffCadre&gt;
\end{GraphiqueTikz}
\end{tcblisting}

Ce sera bien ĂŠvidemment plus parlant avec les ĂŠlĂŠments graphiques rajoutĂŠs !

\pagebreak

\subsection{Grilles et axes}\label{creaaxesgr}

La premiĂ¨re commande \textit{utile} va permettre de crĂŠer les grilles, les axes et les graduations.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\TracerAxesGrilles[clĂŠs]{gradX}{gradY}
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Grille} : boolĂŠen (\MontreCode{true} par dĂŠfaut) pour afficher les grilles (pour une grille unique, il suffit de mettre les paramĂ¨tres identiques pour \MontreCode{Xgrille}/\MontreCode{Xgrilles} ou \MontreCode{Ygrille}/\MontreCode{Ygrilles}) ;
	\item \MontreCode{Elargir} : rajout Ă&nbsp; la fin des axes (\MontreCode{0} par dĂŠfaut) ;
	\item \MontreCode{Grads} : boolĂŠen (\MontreCode{true} par dĂŠfaut) pour les graduations ;
	\item \MontreCode{Police} : police globale des graduations {\MontreCode{vide} par dĂŠfaut} ;
	\item \MontreCode{Format} : formatage particulier (voir en dessous) des valeurs des axes.
\end{itemize}

\smallskip

Concernant la clĂŠ \MontreCode{Format}, elle permet de spĂŠcifier un paramĂŠtrage spĂŠcifique pour les valeurs des axes.

\smallskip

Elle peut ĂŞtre donnĂŠe sous la forme \MontreCode{fmt} pour un formatage combinĂŠ, ou sous la forme \MontreCode{fmtX/fmtY} pour diffĂŠrencier le formatage.

\smallskip

Les options possible sont :

\smallskip

\begin{itemize}
	\item \MontreCode{num} : formater avec \textsf{siunitx} ;
	\item \MontreCode{annee} : formater en annĂŠe ;
	\item \MontreCode{frac} : formater en fraction \textsf{frac} ;
	\item \MontreCode{dfrac} : formater en fraction \textsf{dfrac} ;
	\item \MontreCode{nfrac} : formater en fraction \textsf{nicefrac} ;\hfill(Ă&nbsp; charger !)
	\item \MontreCode{trig} : formater en trigo avec \textsf{frac} ;
	\item \MontreCode{dtrig} : formater en trigo avec \textsf{dfrac} ;
	\item \MontreCode{ntrig} : formater en trigo avec \textsf{nfrac} ;
	\item \MontreCode{sqrt} : formater en racine avec \textsf{frac} ;
	\item \MontreCode{dsqrt} : formater en racine avec \textsf{dfrac} ;
	\item \MontreCode{nsqrt} : formater en racine avec \textsf{nicefrac}.
\end{itemize}

\smallskip

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}
	[x=0.075cm,y=0.03cm,Xmin=0,Xmax=160,Xgrille=20,Xgrilles=10,
	Origy=250,Ymin=250,Ymax=400,Ygrille=25,Ygrilles=5]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{0,10,...,160}{250,275,...,400}
\end{GraphiqueTikz}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.9cm,y=0.425cm,Xmin=4,Xmax=20,Origx=4,
	Ymin=40,Ymax=56,Ygrille=2,Ygrilles=1,Origy=40]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{4,5,...,20}{40,42,...,56}
\end{GraphiqueTikz}
\end{tcblisting}

Ă noter qu'il existe les clĂŠs boolĂŠennes \MontreCode{[Derriere]} (sans les graduations) et \MontreCode{[Devant]} (sans la grille) pour afficher les axes en mode \textit{sous/sur}-impression dans le cas d'intĂŠgrales par exemple.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=2.75cm,y=3cm,
	Xmin=0,Xmax=3.5,Xgrille=pi/12,Xgrilles=pi/24,
	Ymin=-1.05,Ymax=1.05,Ygrille=0.2,Ygrilles=0.05]
	\TracerAxesGrilles[Elargir=2.5mm,Format=dtrig/nsqrt,Police=\footnotesize]%
		{pi/6,pi/4,pi/3,pi/2,2*pi/3,3*pi/4,5*pi/6,pi}
		{0,sqrt(2)/2,1/2,sqrt(3)/2,1,-1,-sqrt(3)/2,-1/2,-sqrt(2)/2}
\end{GraphiqueTikz}
\end{tcblisting}

Dans le cas oĂš le formatage ne donne pas de rĂŠsultat(s) satisfaisant(s), il est possible d'utiliser une commande gĂŠnĂŠrique de placement des graduations.

\pagebreak

Dans le cas oĂš les graduations sont \textit{naturellement} dĂŠfinies par les donnĂŠes de la fenĂŞtre et de la grille (principale), il est possible de prĂŠciser \MontreCode{auto} dans les arguments obligatoires (dans ce cas le formatage ne sera pas possible, et \MontreCode{Format=num} sera obligatoirement utilisĂŠ).

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=1.5cm,y=6cm,Xmin=0,Xmax=7,Xgrille=0.5,Xgrilles=0.25,
	Ymin=0,Ymax=1,Ygrille=0.1,Ygrilles=0.05]
	\TracerAxesGrilles[Elargir=2.5mm,Dernier]{auto}{auto}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\subsection{Ajout de valeurs manuellement}\label{ajoutvals}

Il est ĂŠgalement possible d'utiliser une commande spĂŠcifique pour placer des valeurs sur les axes, indĂŠpendamment d'un systĂ¨me \textit{automatisĂŠ} de formatage.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\RajouterValeursAxeX[clĂŠs]{positions}{valeurs formatĂŠes}
\RajouterValeursAxeY[clĂŠs]{positions}{valeurs formatĂŠes}
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Police} : police globale des graduations {\MontreCode{vide} par dĂŠfaut} ;
	\item \MontreCode{Traits} : boolĂŠen pour ajouter les traits des graduations {\MontreCode{true} par dĂŠfaut}.
\end{itemize}

\smallskip

Les arguments obligatoires correspondent aux abscisses (en langage\TikZ) et aux labels (en langage \LaTeX) des graduations.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=2.75cm,y=3cm,
	Xmin=0,Xmax=3.5,Xgrille=pi/12,Xgrilles=pi/24,
	Ymin=-1.05,Ymax=1.05,Ygrille=0.2,Ygrilles=0.05]
	\TracerAxesGrilles[Grad=false,Elargir=2.5mm,]{}{}
	\RajouterValeursAxeX
		{0.15,0.6,pi/2,2.8284}
		{\num{0.15},$\frac35$,$\displaystyle\frac{\pi}{2}$,$\sqrt{8}$}
	\RajouterValeursAxeY
		{-1,0.175,0.3,sqrt(3)/2}
		{\num{-1},\num{0.175},$\nicefrac{3}{10}$,$\frac{\sqrt{3}}{2}$}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\section{Commandes spĂŠcifiques de dĂŠfinitions}

\subsection{Tracer une droite}\label{tracdroite}

L'idĂŠe est de proposer une commande pour tracer une droite, Ă&nbsp; partir :

\begin{itemize}
	\item de deux points (ou nĹuds) ;
	\item d'un point (ou nĹud) et de la pente.
\end{itemize}

Il existe ĂŠgalement une commande pour une asymptote verticale.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\TracerDroite[clĂŠs]{point ou nĹud}{point ou noeud ou pente}
\TracerAsymptote[clĂŠs]{abscisse}
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Nom} : nom ĂŠventuel du tracĂŠ (pour rĂŠutilisation) ;
	\item \MontreCode{Pente} : boolĂŠen pour prĂŠciser que la pente est utilisĂŠe (\MontreCode{false} par dĂŠfaut) ;
	\item \MontreCode{Debut} : dĂŠbut du tracĂŠ (\MontreCode{\textbackslash pflxmin} par dĂŠfaut) ;
	\item \MontreCode{Fin} : fin du tracĂŠ (\MontreCode{\textbackslash pflxmax} par dĂŠfaut) ;
	\item \MontreCode{Couleur} : couleur du tracĂŠ (\MontreCode{black} par dĂŠfaut).
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.8cm,y=1cm,Xmin=-7,Xmax=4,Ymin=-3,Ymax=5]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\DefinirPts[Aff,Couleur=gray]{A/-4/3,B/2/0,C/0/-1}
	\TracerDroite[Couleur=red]{(-2,-1)}{(2,4)}
	\TracerDroite[Couleur=blue,Debut=-5,Fin=3]{(A)}{(B)}
	\TracerDroite[Couleur=olive,Pente]{(C)}{0.25}
	\TracerAsymptote[Couleur=brown]{-6}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\subsection{DĂŠfinir une fonction, tracer la courbe d'une fonction}\label{deftracfct}

L'idĂŠe est de dĂŠfinir une fonction, pour rĂŠutilisation ultĂŠrieure. Cette commande \textit{crĂŠe} la fonction, sans la tracer, car dans certains cas des ĂŠlĂŠments devront ĂŞtre tracĂŠs au prĂŠalable.

\smallskip

Il existe ĂŠgalement une commande pour tracer la courbe d'une fonction prĂŠcĂŠdemment dĂŠfinie.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\DefinirCourbe[clĂŠs]&lt;nom fct&gt;{formule xint}
\TracerCourbe[clĂŠs]{formule xint}
\end{tcblisting}

Les \MontreCode{[clĂŠs]} pour la dĂŠfinition ou le tracĂŠ, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Debut} : borne infĂŠrieure de l'ensemble de dĂŠfinition (\MontreCode{\textbackslash pflxmin} par dĂŠfaut) ;
	\item \MontreCode{Fin} : borne infĂŠrieure de l'ensemble de dĂŠfinition (\MontreCode{\textbackslash pflxmax} par dĂŠfaut) ;
	\item \MontreCode{Nom} : nom de la courbe (important pour la suite !) ;
	\item \MontreCode{Couleur} : couleur du tracĂŠ (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{Pas} : pas du tracĂŠ (il est dĂŠterminĂŠ \textit{automatiquement} au dĂŠpart mais peut ĂŞtre modifiĂŠ) ;
	\item \MontreCode{Trace} : boolĂŠen pour tracer ĂŠgalement la courbe (\MontreCode{false} par dĂŠfaut).
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.9cm,y=0.425cm,Xmin=4,Xmax=20,Origx=4,
	Ymin=40,Ymax=56,Ygrille=2,Ygrilles=1,Origy=40]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{4,5,...,20}{40,42,...,56}
	%dĂŠfinition de la fonction + tracĂŠ de la courbe
	%la fonction ln a ĂŠtĂŠ crĂŠĂŠe pour xint !
	\DefinirCourbe[Nom=cf,Debut=5,Fin=19]&lt;f&gt;{-2*x+3+24*ln(2*x)}
	\TracerCourbe[Couleur=red,Debut=5,Fin=19]{f(x)}
	%ou en une seule commande si "suffisant"
	%\DefinirCourbe[Nom=cf,Debut=5,Fin=19,Trace]&lt;f&gt;{-2*x+3+24*ln(2*x)}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\subsection{DĂŠfinir/tracer une courbe d'interpolation (simple)}\label{deftracinterpo}

Il est ĂŠgalement possible de dĂŠfinir une courbe via des points supports, donc une courbe d'interpolation simple.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\DefinirCourbeInterpo[clĂŠs]{liste des points support}
\TracerCourbeInterpo[clĂŠs]{liste des points support}
\end{tcblisting}

Les \MontreCode{[clĂŠs]} pour la dĂŠfinition ou le tracĂŠ, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Nom} : nom de la courbe d'interpolation (important pour la suite !) ;
	\item \MontreCode{Couleur} : couleur du tracĂŠ (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{Tension} : paramĂŠtrage de la \textit{tension} du tracĂŠ d'interpolation (\MontreCode{0.5} par dĂŠfaut) ;
	\item \MontreCode{Trace} : boolĂŠen pour tracer ĂŠgalement la courbe (\MontreCode{false} par dĂŠfaut).
\end{itemize}

L'argument obligatoire permet quant Ă&nbsp; lui de spĂŠcifier la liste des points supports sous la forme \MontreCode{(x1,y1)(x2,y2)...}.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.8cm,y=1cm,Xmin=-7,Xmax=4,Ymin=-3,Ymax=5]
	\TracerAxesGrilles[Elargir=2.5mm]{-7,-6,...,4}{-3,-2,...,5}
	%courbes d'interpolation simples (avec tension diff)
	\DefinirCourbeInterpo[Nom=interpotest,Couleur=blue,Trace]%
		{(-6,4)(-2,-2)(3,3.5)}
	\DefinirCourbeInterpo[Nom=interpotest,Couleur=red,Trace,Tension=1]%
		{(-6,4)(-2,-2)(3,3.5)}
\end{GraphiqueTikz}
\end{tcblisting}

\newpage

\subsection{DĂŠfinir/tracer une courbe d'interpolation (Hermite)}\label{deftracfctspline}

Il est ĂŠgalement possible de dĂŠfinir une courbe via des points supports, donc une courbe d'interpolation avec contrĂ´le de la dĂŠrivĂŠe.

\smallskip

Certaines exploitations demandant des techniques diffĂŠrentes suivant le type de fonction utilisĂŠe, une clĂŠ boolĂŠenne \MontreCode{Spline} permettra au code d'adapter ses calculs suivant l'objet utilisĂŠ.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\DefinirCourbeSpline[clĂŠs]{liste des points support}[\macronomspline]
\TracerCourbeSpline[clĂŠs]{liste des points support}[\macronomspline]
\end{tcblisting}

Les \MontreCode{[clĂŠs]} pour la dĂŠfinition ou le tracĂŠ, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Nom} : nom de la courbe d'interpolation (important pour la suite !) ;
	\item \MontreCode{Coeffs} : modifier (voir la documentation de \textsf{ProfLycee}\footnote{CTAN : \url{https://ctan.org/pkg/proflycee}} les \textit{coefficients} du spline ;
	\item \MontreCode{Couleur} : couleur du tracĂŠ (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{Trace} : boolĂŠen pour tracer ĂŠgalement la courbe (\MontreCode{false} par dĂŠfaut) ;
	\item \MontreCode{Alt} : boolĂŠen pour activer une autre \textit{mĂŠthode de calcul} (\MontreCode{false} par dĂŠfaut).
\end{itemize}

L'argument obligatoire permet quant Ă&nbsp; lui de spĂŠcifier la liste des points supports sous la forme \MontreCode{x1/y1/f'1Â§x2/y2/f'2Â§...} avec :

\begin{itemize}
	\item \MontreCode{xi/yi} les coordonnĂŠes du point ;
	\item \MontreCode{f'i} la dĂŠrivĂŠ au point support.
\end{itemize}

\smallskip

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.8cm,y=0.8cm,Xmin=-7,Xmax=4,Ymin=-3,Ymax=5]
	\TracerAxesGrilles[Elargir=2.5mm]{-7,-6,...,4}{-3,-2,...,5}
	%dĂŠfinition de la liste des points support du spline
	\def\LISTETEST{-6/4/-2Â§-5/2/-2Â§-4/0/-2Â§-2/-2/0Â§1/2/2Â§3/3.5/0.5}
	%dĂŠfinition et tracĂŠ du spline cubique (x2)
	\DefinirCourbeSpline[Nom=splinetest,Trace,Couleur=olive]{\LISTETEST}
	\DefinirCourbeSpline[Alt,Nom=splinetest,Trace,Couleur=teal]{\LISTETEST}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\subsection{DĂŠfinir des points sous forme de nĹuds}\label{defpts}

La seconde idĂŠe est de travailler avec des nĹuds \TikZ, qui pourront ĂŞtre utiles pour des tracĂŠs de tangentes, des reprĂŠsentations d'intĂŠgrales$\ldots$

\smallskip

Il est ĂŠgalement possible de dĂŠfinir des nĹuds pour des points \textit{image}.

\smallskip

Certaines commandes (explicitĂŠs ultĂŠrieurement) permettent de dĂŠterminer des points particuliers des courbes sous forme de nĹuds, donc il semble intĂŠressant de pouvoir en dĂŠfinir directement.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%par les coordonnĂŠes
\DefinirPts[clĂŠs]{Nom1/x1/y1,Nom2/x2/y2,...}
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Aff} : boolĂŠen pour marquer les points (\MontreCode{false} par dĂŠfaut) ;
	\item \MontreCode{Couleur} : couleur des points, si \MontreCode{Aff=true} (\MontreCode{black} par dĂŠfaut).
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%sous forme d'image
\DefinirImage[clĂŠs]{objet}{abscisse}
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Nom} : nom du nĹud (\MontreCode{vide} par dĂŠfaut) ;
	\item \MontreCode{Spline} : boolĂŠen pour spĂŠcifier qu'un spline est utilisĂŠ (\MontreCode{false} par dĂŠfaut).
\end{itemize}

Le premier argument obligatoire est l'\textit{objet} considĂŠrĂŠ (nom de la courbe pour le spline, fonction sinon) ; le second est l'abscisse du point considĂŠrĂŠ.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.9cm,y=0.425cm,Xmin=4,Xmax=20,Origx=4,
	Ymin=40,Ymax=56,Ygrille=2,Ygrilles=1,Origy=40]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{4,5,...,20}{40,42,...,56}
	%dĂŠfinition de la fonction + tracĂŠ de la courbe
	\DefinirFonction[Nom=cf,Debut=5,Fin=19,Trace,Couleur=red]&lt;f&gt;{-2*x+3+24*log(2*x)}
	%nĹuds manuels
	\DefinirPts[Aff,Couleur=brown]{A/7/42,B/16/49}
	%nĹud image
	\DefinirImage[Nom=IMGf]{f}{14}
	\MarquerPts*[Style=x,Couleur=blue]{(IMGf)}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\subsection{Marquage de points}\label{markpts}

L'idĂŠe est de proposer de quoi marquer des points avec un style particulier.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\MarquerPts(*)[clĂŠs]&lt;police&gt;{liste}
\end{tcblisting}

La version \textit{ĂŠtoilĂŠe} marque les points sans les \og noms \fg, alors que la version \textit{non ĂŠtoilĂŠe} les affiche :

\begin{itemize}
	\item dans le cas de la version \textit{ĂŠtoilĂŠe}, la liste est Ă&nbsp; donner sous la forme \MontreCode{(ptA),(ptB),...} ;
	\item sinon, la liste est Ă&nbsp; donner sous la forme \MontreCode{(ptA)/labelA/poslabelA,...}.
\end{itemize}

\smallskip

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Couleur} : couleur (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{Style} : style des marques (\MontreCode{o} par dĂŠfaut).
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}[x=1.5cm,y=1.5cm,Ymin=-2]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\DefinirPts{A/1.75,-1.25}\MarquerPts[Couleur=pink]{(A)/A/below} %rond (par dĂŠfaut)
	\MarquerPts[Couleur=teal]{(1,1)/M/below}
	\MarquerPts[Couleur=red,Style=x]{(1.25,1)/$A$/below} %croix
	\MarquerPts[Couleur=orange,Style=+]&lt;\small\sffamily&gt;{(1.5,1)/K/below} %plus
	\MarquerPts[Couleur=blue,Style=c]{(1.75,1)/P/below} %carrĂŠ
	\MarquerPts[Couleur=gray,Style=d]{(2,1)/P/below} %diamant
	\MarquerPts*[Couleur=orange/yellow]{(2,2),(2.5,2.25)} %rond bicolore
	\MarquerPts*[Style=+,Couleur=red]{(1,2)}
	\MarquerPts*[Style=x,Couleur=blue]{(2.25,1)}
	\MarquerPts*[Style=c,Couleur=magenta]{(-2,-1)}
	\MarquerPts[Couleur=red,Style=x]{(-1,1)/$A$/below,(-2,2)/$B$/below left}
\end{GraphiqueTikz}
\end{tcblisting}

Ă noter qu'il est ĂŠgalement possible de modifier la taille des marques \MontreCode{o/x/+/c} via les \MontreCode{[clĂŠs]} :

\begin{itemize}
	\item \MontreCode{Taillex=...} (\MontreCode{2pt} par dĂŠfaut) pour les points \textit{croix} ;
	\item \MontreCode{Tailleo=...} (\MontreCode{1.75pt} par dĂŠfaut) pour les points \textit{cercle} ;
	\item \MontreCode{Taillec=...} (\MontreCode{2pt} par dĂŠfaut) pour les points \textit{carrĂŠ}.
\end{itemize}

\pagebreak

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}[x=1cm,y=1cm,Xmin=0,Ymin=0]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\MarquerPts[Couleur=red,Style=x,Taillex=3.5pt]{(1.25,1.25)/$A$/below}
	\MarquerPts[Couleur=teal,Tailleo=2.5pt]{(2,2)/$A$/right}
	\MarquerPts*[Couleur=orange,Style=c,Taillec=4pt]{(0.5,2.5)}
\end{GraphiqueTikz}
\end{tcblisting}

\subsection{Marquer des points de discontinuitĂŠ}\label{ptsdiscont}

Il est possible de marquer des points de discontinuitĂŠ, mais c'est commande est \textit{dĂŠconnectĂŠe} des commandes de tracĂŠ de courbes/splines.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\AfficherPtsDiscont[clĂŠs]{liste}
\end{tcblisting}

Le premier argument, \textit{optionnel} et entre \MontreCode{[...]}, contient les \MontreCode{ClĂŠs} suivantes :

\begin{itemize}
	\item \MontreCode{Couleur=...} (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{Pos=...} (\MontreCode{D} par dĂŠfaut) pour choisir la position de la discontinuitĂŠ (parmi \MontreCode{G/D}) ;
	\item \MontreCode{Echelle=...} (\MontreCode{1} par dĂŠfaut) pour modifier l'ĂŠchelle du symbole ;
	\item \MontreCode{Type=...} (\MontreCode{par} par dĂŠfaut) pour choisir le type de symbole, parmi \MontreCode{par/cro/rond/demirond}.
\end{itemize}

Le second argument, obligatoire et entre \MontreCode{\{...\}} permet de prĂŠciser la liste des points en lesquels le symbole de discontinuitĂŠ sera positionnĂŠ, sous la forme \MontreCode{x1/y1/d1 Â§ x2/y2/d2 Â§ ...} avec les points \MontreCode{(xi;yi)} et \MontreCode{f'(xi)=di}.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}[x=1cm,y=1cm,Xmin=0,Xmax=10,Ymin=0,Ymax=5]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\DefinirCourbeSpline[Trace,Couleur=red]{0/1/-1 Â§ 4/4/0}
	\AfficherPtsDiscont{4/4/0}
	\AfficherPtsDiscont[Pos=G,Type=cro]{0/1/-1}
	\DefinirCourbeSpline[Trace,Couleur=blue]{5/1/1.5 Â§ 8/4/0.5}
	\AfficherPtsDiscont[Couleur=blue,Type=rond]{8/4/0.5}
	\AfficherPtsDiscont[Couleur=blue,Pos=G,Type=demirond,Echelle=2]{5/1/1.5}
\end{GraphiqueTikz}
\end{tcblisting}

\subsection{RĂŠcupĂŠrer les coordonnĂŠes de nĹuds}\label{recupcoordo}

Il est ĂŠgalement possible, dans l'optique d'une rĂŠutilisation de coordonnĂŠes, de rĂŠcupĂŠrer les coordonnĂŠes d'un nĹud (dĂŠfini ou dĂŠterminĂŠ).

\smallskip

Les calculs ĂŠtant effectuĂŠs en flottant en fonction des unitĂŠs (re)calculĂŠes, les valeurs sont donc approchĂŠes !

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\RecupererAbscisse{nĹud}[\macrox]
\RecupererOrdonnee{nĹud}[\macroy]
\RecupererCoordonnees{nĹud}[\macrox][\macroy]
\end{tcblisting}

\subsection{Placer du texte}\label{placetxt}

Ă noter qu'une commande de placement de texte est disponible.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\PlacerTexte[clĂŠs]{(nĹud ou coordonnĂŠes)}{texte}
\end{tcblisting}

Les \MontreCode{[clĂŠs]} disponibles sont :

\begin{itemize}
	\item \MontreCode{Police=...} (\MontreCode{\textbackslash normalsize\textbackslash normalfont} par dĂŠfaut) pour la police ;
	\item \MontreCode{Couleur=...} (\MontreCode{black} par dĂŠfaut) pour la couleur ;
	\item \MontreCode{Position=...} (\MontreCode{vide} par dĂŠfaut) pour la position du texte par rapport aux coordonnĂŠes.
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
	\begin{GraphiqueTikz}[x=1cm,y=1cm,Xmin=0,Xmax=5,Ymin=0,Ymax=1]
		\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
		\PlacerTexte[Couleur=red,Police=\LARGE,Position=right]{(1.5,0.5)}{courbe $C_1$}
	\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\section{Commandes spĂŠcifiques d'exploitation des courbes}

\subsection{Placement d'images}\label{images}

Il est possible de la placer des points (images) sur une courbe, avec traits de construction ĂŠventuels.

La fonction/courbe utilisĂŠe doit avoir ĂŠtĂŠ dĂŠclarĂŠe prĂŠcĂŠdemment pour que cette commande fonctionne.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\PlacerImages[clĂŠs]{fonction ou courbe}{liste d'abscisses}
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Traits} : boolĂŠen pour afficher les traits de construction (\MontreCode{false} par dĂŠfaut) ;
	\item \MontreCode{Couleurs} : couleur des points/traits, sous la forme \MontreCode{Couleurs} ou \MontreCode{CouleurPoint/CouleurTraits} ;
	\item \MontreCode{Spline} : boolĂŠen pour prĂŠciser que la courbe utilisĂŠe est dĂŠfinie comme un \textsf{spline} (\MontreCode{false} par dĂŠfaut).
\end{itemize}

\smallskip

Le premier argument obligatoire, permet de spĂŠcifier :

\smallskip

\begin{itemize}
	\item le nom de la courbe dans la cas \MontreCode{Spline=true} ;
	\item le nom de la fonction sinon.
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.9cm,y=0.425cm,Xmin=4,Xmax=20,Origx=4,
	Ymin=40,Ymax=56,Ygrille=2,Ygrilles=1,Origy=40]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{4,5,...,20}{40,42,...,56}
	%dĂŠfinition de la fonction + tracĂŠ de la courbe
	\DefinirCourbe[Nom=cf,Debut=5,Fin=19,Trace,Couleur=red]&lt;f&gt;{-2*x+3+24*log(2*x)}
	%images
	\PlacerImages[Traits,Couleurs=teal/blue]{f}{6,7,8,9,10}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\subsection{DĂŠtermination d'antĂŠcĂŠdents}\label{defanteced}

Il est possible de dĂŠterminer graphiquement les antĂŠcĂŠdents d'un rĂŠel donnĂŠ.

La fonction/courbe utilisĂŠe doit avoir ĂŠtĂŠ dĂŠclarĂŠe prĂŠcĂŠdemment pour que cette commande fonctionne.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\TrouverAntecedents[clĂŠs]{courbe}{k}
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Nom} : base du nom des \textbf{nĹuds} intersection (\MontreCode{S} par dĂŠfaut, ce qui donnera \textsf{S-1}, \textsf{S-2}, etc) ;
	\item \MontreCode{Aff} : booleen pour afficher les points (\MontreCode{true} par dĂŠfaut) ;
	\item \MontreCode{Couleur} : couleur des points (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{AffDroite} : booleen pour afficher la droite horizontale (\MontreCode{false} par dĂŠfaut).
\end{itemize}

\smallskip

Le premier argument obligatoire, permet de spĂŠcifier le \textbf{nom} de la courbe.

\smallskip

Le second argument obligatoire, permet de spĂŠcifier la valeur Ă&nbsp; atteindre.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.9cm,y=0.425cm,Xmin=4,Xmax=20,Origx=4,
	Ymin=40,Ymax=56,Ygrille=2,Ygrilles=1,Origy=40]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{4,5,...,20}{40,42,...,56}
	%dĂŠfinition de la fonction + tracĂŠ de la courbe
	\DefinirCourbe[Nom=cf,Debut=5,Fin=19,Trace,Couleur=red]&lt;f&gt;{-2*x+3+24*log(2*x)}
	%antĂŠcĂŠdents
	\TrouverAntecedents[Couleur=teal,AffDroite,Aff]{cf}{53}
	%les deux antĂŠcĂŠdents sont aux nĹuds (S-1) et (S-2)
\end{GraphiqueTikz}
\end{tcblisting}

%Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :
%
%\smallskip
%
%\begin{itemize}
%	\item \MontreCode{Nom} : base du nom des \textbf{nĹuds} intersection (\MontreCode{S} par dĂŠfaut, ce qui donnera \textsf{S-1}, \textsf{S-2}, etc) ;
%	\item \MontreCode{Aff} : booleen pour afficher les points (\MontreCode{true} par dĂŠfaut) ;
%	\item \MontreCode{Couleur} : couleur des points (\MontreCode{black} par dĂŠfaut) ;
%	\item \MontreCode{AffDroite} : booleen pour afficher la droite horizontale (\MontreCode{false} par dĂŠfaut).
%\end{itemize}

\pagebreak

\subsection{Construction d'antĂŠcĂŠdents}\label{tracanteced}

Il est possible de construire graphiquement les antĂŠcĂŠdents d'un rĂŠel donnĂŠ.

La fonction/courbe utilisĂŠe doit avoir ĂŠtĂŠ dĂŠclarĂŠe prĂŠcĂŠdemment pour que cette commande fonctionne.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\PlacerAntecedents[clĂŠs]{courbe}{k}
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Couleurs} : couleur des points/traits, sous la forme \MontreCode{Couleurs} ou \MontreCode{CouleurPoint/CouleurTraits} ;
	\item \MontreCode{Nom} : nom \textit{ĂŠventuel} pour les points d'intersection liĂŠs aux antĂŠcĂŠdents (\MontreCode{vide} par dĂŠfaut) ;
	\item \MontreCode{Traits} : booleen pour afficher les traits de construction (\MontreCode{false} par dĂŠfaut).
\end{itemize}

\smallskip

Le premier argument obligatoire, permet de spĂŠcifier le \textbf{nom} de la courbe.

\smallskip

Le second argument obligatoire, permet de spĂŠcifier la valeur Ă&nbsp; atteindre.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.9cm,y=0.425cm,Xmin=4,Xmax=20,Origx=4,
	Ymin=40,Ymax=56,Ygrille=2,Ygrilles=1,Origy=40]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{4,5,...,20}{40,42,...,56}
	%dĂŠfinition de la fonction + tracĂŠ de la courbe
	\DefinirCourbe[Nom=cf,Debut=5,Fin=19,Trace,Couleur=red]&lt;f&gt;{-2*x+3+24*log(2*x)}
	%antĂŠcĂŠdents
	\PlacerAntecedents[Couleurs=teal/cyan,Traits,Nom=PO]{cf}{53}
	\RecupererAbscisse{(PO-1)}[\premsol]
	\RecupererAbscisse{(PO-2)}[\deuxsol]
\end{GraphiqueTikz}

Graphiquement, les antĂŠcĂŠdents de 53 sont (environ) :

\begin{itemize}
	\item \num{\premsol}
	\item \num{\deuxsol}
\end{itemize}
\end{tcblisting}

\pagebreak

\subsection{Intersections de deux courbes}\label{intersect}

Il est ĂŠgalement possible de dĂŠterminer (sous forme de nĹuds) les ĂŠventuels points d'intersection de deux courbes prĂŠalablement dĂŠfinies.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\TrouverIntersections[clĂŠs]{courbe1}{courbe2}
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Nom} : base du nom des \textbf{nĹuds} intersection (\MontreCode{S} par dĂŠfaut, ce qui donnera \textsf{S-1}, \textsf{S-2}, etc) ;
	\item \MontreCode{Aff} : boolĂŠen pour afficher les points (\MontreCode{true} par dĂŠfaut) ;
	\item \MontreCode{Couleur} : couleur des points (\MontreCode{black} par dĂŠfaut).
\end{itemize}

\smallskip

Le premier argument obligatoire, permet de spĂŠcifier le \textbf{nom} de la premiĂ¨re courbe.

\smallskip

Le premier argument obligatoire, permet de spĂŠcifier le \textbf{nom} de la seconde courbe.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.9cm,y=0.425cm,Xmin=4,Xmax=20,Origx=4,
	Ymin=40,Ymax=56,Ygrille=2,Ygrilles=1,Origy=40]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{4,5,...,20}{40,42,...,56}
	\DefinirCourbe[Nom=cf,Debut=5,Fin=19,Trace,Couleur=red]&lt;f&gt;{-2*x+3+24*log(2*x)}
	\DefinirCourbe[Nom=cg,Debut=5,Fin=19,Trace,Couleur=blue]&lt;g&gt;{0.25*(x-12)^2+46}
	%intersections, nommĂŠes (TT-1) et (TT-2)
	\TrouverIntersections[Nom=TT,Couleur=darkgray,Aff,Traits]{cf}{cg}
	%rĂŠcupĂŠration des points d'intersection
	\RecupererCoordonnees{(TT-1)}[\alphaA][\betaA]
	\RecupererCoordonnees{(TT-2)}[\alphaB][\betaB]
\end{GraphiqueTikz}\\
Les solutions de $f(x)=g(x)$ sont $\alpha \approx \num{\alphaA}$ et
$\beta \approx \num{\alphaB}$.\\
Les points d'intersection des courbes de $f$ et de $g$ sont donc
$(\ArrondirNum[2]{\alphaA};\ArrondirNum[2]{\betaA})$ et
$(\ArrondirNum[2]{\alphaB};\ArrondirNum[2]{\betaB})$.
\end{tcblisting}

\pagebreak

\subsection{Extremums}\label{maximum}\label{minimum}

L'idĂŠe (encore \textit{expĂŠrimentale}) est de proposer des commandes pour extraire les extremums d'une courbe dĂŠfinie par le package.

La commande crĂŠe le nĹud correspondant, et il est du coup possible de rĂŠcupĂŠrer ses coordonnĂŠes pour exploitation ultĂŠrieure.

\smallskip

Il est possible, en le spĂŠcifiant, de travailler sur les diffĂŠrentes courbes gĂŠrĂŠes par le package (fonction, interpolation, spline).

Pour des courbes singuliĂ¨res, il est possible que les rĂŠsultats ne soient pas tout Ă&nbsp; fait ceux attendus\ldots

\smallskip

{\small\faBomb} Pour le moment, les \textit{limitations} sont :

\begin{itemize}
	\item pas de gestion d'extremums multiples (seul le premier sera traitĂŠ)\ldots
	\item pas de gestion d'extremums aux bornes du tracĂŠ\ldots
	\item pas de rĂŠcupĂŠration automatique des paramĂ¨tres de dĂŠfinition des courbes\ldots
	\item le temps de compilation peut ĂŞtre plus long\ldots
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\TrouverMaximum[clĂŠs]{objet}[nĹud crĂŠĂŠ]
\TrouverMinimum[clĂŠs]{objet}[nĹud crĂŠĂŠ]
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Methode} : mĂŠthode, parmi \MontreCode{fonction/interpo/spline} pour les calculs (\MontreCode{fonction} par dĂŠfaut) ;
	\item \MontreCode{Debut} : dĂŠbut du tracĂŠ (\MontreCode{\textbackslash pflxmin} par dĂŠfaut) ;
	\item \MontreCode{Fin} : fin du tracĂŠ (\MontreCode{\textbackslash pflxmax} par dĂŠfaut) ;
	\item \MontreCode{Pas} : pas du tracĂŠ si \MontreCode{fonction} (il est dĂŠterminĂŠ \textit{automatiquement} au dĂŠpart mais peut ĂŞtre modifiĂŠ) ;
	\item \MontreCode{Coeffs} : modifier les \textit{coefficients} du spline si \MontreCode{spline} ;
	\item \MontreCode{Tension} : paramĂŠtrage de la \textit{tension} du tracĂŠ d'interpolation si \MontreCode{interpo}(\MontreCode{0.5} par dĂŠfaut).
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}[x=1cm,y=1cm,Xmin=-1,Xmax=5,Ymin=-1,Ymax=3]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\DefinirCourbe[Nom=cf,Debut=0.35,Fin=4.2,Trace]%
		&lt;f&gt;{0.6*cos(4.5*(x-4)+2.1)-1.2*sin(x-4)+0.1*x+0.2}
	\TrouverMaximum[Debut=0.35,Fin=4.2]{f}[cf-max]
	\TrouverMaximum[Debut=3,Fin=4]{f}[cf-maxlocal]
	\TrouverMinimum[Debut=1,Fin=2]{f}[cf-minlocal]
	\MarquerPts*[Couleur=red,Traits]{(cf-max)}
	\MarquerPts*[Couleur=blue,Traits]{(cf-maxlocal)}
	\MarquerPts*[Couleur=olive,Traits]{(cf-minlocal)}
	\RecupererCoordonnees{(cf-max)}[\MonMaxX][\MonMaxY]
\end{GraphiqueTikz}\\
Le maximum est $M\approx\ArrondirNum{\MonMaxY}$, atteint en $x\approx\ArrondirNum{\MonMaxX}$
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}[x=0.8cm,y=1cm,Xmin=-7,Xmax=4,Ymin=-3,Ymax=5]
	\TracerAxesGrilles[Elargir=2.5mm]{-7,-6,...,4}{-3,-2,...,5}
	\DefinirCourbeInterpo[Nom=interpotest,Couleur=red,Trace,Tension=1]%
	{(-6,4)(-2,-2)(3,3.5)}
	\TrouverMinimum[Methode=interpo,Tension=1]{(-6,4)(-2,-2)(3,3.5)}[interpo-min]
	\MarquerPts*[Couleur=blue]{(interpo-min)}
	\RecupererCoordonnees{(interpo-min)}[\MinInterpoX][\MinInterpoY]
\end{GraphiqueTikz}\\
Le minimum est $M\approx\ArrondirNum[3]{\MinInterpoY}$, atteint en $x\approx\ArrondirNum[3]{\MinInterpoX}$
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=1.2cm,y=1.6cm,Xmin=-7,Xmax=4,Ymin=-3,Ymax=3,Ygrille=0.5,Ygrilles=0.25]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\def\LISTETEST{-6/2/0Â§-1/-2/0Â§2/1/0Â§3.5/0/-1}
	\DefinirCourbeSpline[Nom=splinetest,Trace]{\LISTETEST}
	\TrouverMinimum[Methode=spline]{\LISTETEST}[spline-min]
	\MarquerPts*[Couleur=red]{(spline-min)}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\subsection{IntĂŠgrales (version amĂŠliorĂŠe)}\label{integr}

On peut ĂŠgalement travailler avec des intĂŠgrales.

Dans ce cas il est prĂŠfĂŠrable de mettre en ĂŠvidence le domaine \textbf{avant} les tracĂŠs, pour ĂŠviter la surimpression par rapport aux courbes/points.

\smallskip

Il est possible de :

\begin{itemize}
	\item reprĂŠsenter une intĂŠgrale \textbf{sous} une courbe dĂŠfinie ;
	\item reprĂŠsenter une intĂŠgrale \textbf{entre} deux courbes ;
	\item les bornes d'intĂŠgration peuvent ĂŞtre des abscisses et/ou des nĹuds.
\end{itemize}

\smallskip

{\small\faBomb} Compte-tenu des diffĂŠrences de traitement entre les courbes par formule, les courbes par interpolation simple ou les courbes par interpolation cubique, les arguments et clĂŠs peuvent diffĂŠrer suivant la configuration !

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\TracerIntegrale[clĂŠs]&lt;options spĂŠcifiques&gt;{objet1}[objet2]{A}{B}
\end{tcblisting}

Les \MontreCode{[clĂŠs]} pour la dĂŠfinition ou le tracĂŠ, optionnelles, disponibles sont :

\begin{itemize}
	\item \MontreCode{Couleurs} =: couleurs du remplissage, sous la forme \MontreCode{Couleur} ou \MontreCode{CouleurBord/CouleurFond} (\MontreCode{gray} par dĂŠfaut) ;
	\item \MontreCode{Style} : type de remplissage, parmi \MontreCode{remplissage}/\MontreCode{hachures} (\MontreCode{remplissage} par dĂŠfaut) ;
	\item \MontreCode{Opacite} : opacitĂŠ (\MontreCode{0.5} par dĂŠfaut) du remplissage ;
	\item \MontreCode{Hachures} : style (\MontreCode{north west lines} par dĂŠfaut) du remplissage hachures ;
	\item \MontreCode{Type} : type d'intĂŠgrale parmi
	\begin{itemize}
		\item \MontreCode{fct} (dĂŠfaut) pour une intĂŠgrale sous une courbe dĂŠfinie par une formule ;
		\item \MontreCode{spl} pour une intĂŠgrale sous une courbe dĂŠfinie par un spline cublique ;
		\item \MontreCode{fct/fct} pour une intĂŠgrale entre deux courbes dĂŠfinie par une formule ;
		\item \MontreCode{fct/spl} pour une intĂŠgrale entre une courbe (dessus) dĂŠfinie par une formule et une courbe (dessous) dĂŠfinie par un spline cubique ;
		\item etc
	\end{itemize}
	\item \MontreCode{Pas} : pas (calculĂŠ par dĂŠfaut sinon) pour le tracĂŠ ;
	\item \MontreCode{Jonction} : jonction des segments (\MontreCode{bevel} par dĂŠfaut) ;
	\item \MontreCode{Bornes} : type des bornes parmi :
	\begin{itemize}
		\item \MontreCode{abs} pour les bornes donnĂŠes par les abscisses ;
		\item \MontreCode{noeuds} pour les bornes donnĂŠes par les nĹuds ;
		\item \MontreCode{abs/noeud} pour les bornes donnĂŠes par abscisse et nĹud ;
		\item \MontreCode{noeud/abs} pour les bornes donnĂŠes par nĹud et abscisse ;
	\end{itemize}
	\item \MontreCode{Bord} : boolĂŠen (\MontreCode{true} par dĂŠfaut) pour afficher les traits latĂŠraux,%
	\item \MontreCode{NomSpline} : macro (important !) du spline gĂŠnĂŠrĂŠ prĂŠcĂŠdemment pour un spline en version supĂŠrieure ;
	\item \MontreCode{NomSplineB} : macro (important !) du spline gĂŠnĂŠrĂŠ prĂŠcĂŠdemment pour un spline en version infĂŠrieure ;
	\item \MontreCode{NomInterpo} : nom (important !) de la courbe d'interpolation gĂŠnĂŠrĂŠe prĂŠcĂŠdemment, en version supĂŠrieure ;
	\item \MontreCode{NomInterpoB} : nom (important !) de la courbe d'interpolation gĂŠnĂŠrĂŠe prĂŠcĂŠdemment, en version infĂŠrieure ;
	\item \MontreCode{Tension} : tension pour la courbe d'interpolation gĂŠnĂŠrĂŠe prĂŠcĂŠdemment, en version supĂŠrieure ;
	\item \MontreCode{TensionB} : tension de la courbe d'interpolation gĂŠnĂŠrĂŠe prĂŠcĂŠdemment, en version infĂŠrieure.
\end{itemize}

\smallskip

Le premier argument obligatoire est la fonction ou la courbe du spline ou la liste de points d'interpolation.

\smallskip

L'argument suivant, optionnel, est la fonction ou la courbe du spline ou la liste de points d'interpolation.

\smallskip

Les deux derniers arguments obligatoires sont les bornes de l'intĂŠgrale, donnĂŠes sous une forme en adĂŠquation avec la clĂŠ \MontreCode{Bornes}.

\pagebreak

Dans le cas de courbes dĂŠfinies par des \textit{points}, il est nĂŠcessaire de travailler sur des intervalles sur lesquels la premiĂ¨re courbe est \textbf{au-dessus} de la deuxiĂ¨me.

Il sera sans doute intĂŠressant de travailler avec les \textit{intersections} dans ce cas.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.6cm,y=0.06cm,
	Xmin=0,Xmax=21,Xgrille=1,Xgrilles=0.5,
	Ymin=0,Ymax=155,Ygrille=10,Ygrilles=5]
	\TracerAxesGrilles%
		[Grads=false,Elargir=2.5mm]{}{}
	\DefinirCourbe[Nom=cf,Debut=1,Fin=20,Couleur=red]&lt;f&gt;{80*x*exp(-0.2*x)}
	\TracerIntegrale
		[Bornes=abs,Couleurs=blue/cyan!50]%
		{f(x)}{3}{12}
	\TracerCourbe[Couleur=red,Debut=1,Fin=20]{f(x)}
	\TracerAxesGrilles%
		[Grille=false,Elargir=2.5mm,Police=\small]{0,1,...,20}{0,10,...,150}
\end{GraphiqueTikz}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=1.2cm,y=1.6cm,Xmin=-7,Xmax=4,Ymin=-3,Ymax=3,Ygrille=0.5,Ygrilles=0.25]
	\TracerAxesGrilles[Grads=false,Elargir=2.5mm]{}{}
	\def\LISTETEST{-6/2/0Â§-1/-2/0Â§2/1/0Â§3.5/0/-1}
	\DefinirCourbeSpline[Nom=splinetest]{\LISTETEST}
	\TracerIntegrale[Type=spl,Style=hachures,Couleurs=purple]{splinetest}{-5.75}{-4.75}
	\TracerIntegrale[Type=spl,Couleurs=blue]{splinetest}{-2}{-1}
	\TracerIntegrale[Type=spl,Couleurs=orange]{splinetest}{1}{3}
	\TracerCourbeSpline[Couleur=olive]{\LISTETEST}
	\TracerAxesGrilles[Grille=false,Elargir=2.5mm]
		{-7,-6,...,4}%
		{-3,-2.5,...,3}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\subsection{Tangentes}\label{tgte}

L'idĂŠe de cette commande est de tracer la tangente Ă&nbsp; une courbe prĂŠcĂŠdemment dĂŠfinie, en spĂŠcifiant :

\begin{itemize}
	\item le point (abscisse ou nĹud) en lequel on souhaite travailler ;
	\item ĂŠventuellement le direction (dans le cas d'une discontinuitĂŠ ou d'une borne) ;
	\item ĂŠventuellement le pas ($h$) du calcul ;
	\item les \textit{ĂŠcartements latĂŠraux} pour tracer la tangente.
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\TracerTangente[clĂŠs]{fonction ou courbe}{point}&lt;options traits&gt;
\end{tcblisting}

Les \MontreCode{[clĂŠs]} pour la dĂŠfinition ou le tracĂŠ, optionnelles, disponibles sont :

\begin{itemize}
	\item \MontreCode{Couleurs} =: couleurs des tracĂŠs, sous la forme \MontreCode{Couleur} ou \MontreCode{CouleurLigne/CouleurPoint} (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{DecG} =: ĂŠcartement horizontal gauche pour dĂŠbuter le tracĂŠ (\MontreCode{1} par dĂŠfaut) ;
	\item \MontreCode{DecD} =: ĂŠcartement horizontal gauche pour dĂŠbuter le tracĂŠ (\MontreCode{1} par dĂŠfaut) ;
	\item \MontreCode{AffPoint} : boolĂŠen pour afficher le point support (\MontreCode{false} par dĂŠfaut) ;
	\item \MontreCode{Spline} : boolĂŠen pour prĂŠciser qu'un spline est utilisĂŠ (\MontreCode{false} par dĂŠfaut) ;
	\item \MontreCode{h} : pas $h$ utilisĂŠ pour les calculs (\MontreCode{0.01} par dĂŠfaut) ;
	\item \MontreCode{Sens} : permet de sprĂŠcifier le \textit{sens} de la tangente, parmi \MontreCode{gd}/\MontreCode{g}/\MontreCode{d} (\MontreCode{gd} par dĂŠfaut) ;
	\item \MontreCode{Noeud} : boolĂŠen pour prĂŠciser qu'un nĹud est utilisĂŠ (\MontreCode{false} par dĂŠfaut).
\end{itemize}

\smallskip

Le premier argument obligatoire est la fonction ou la courbe du spline (le cas ĂŠchĂŠant).

\smallskip

Le dernier argument obligatoire est le point de travail (version abscisse ou nĹud suivant la clĂŠ \MontreCode{Noeud}).

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.9cm,y=0.425cm,Xmin=4,Xmax=20,Origx=4,
	Ymin=40,Ymax=56,Ygrille=2,Ygrilles=1,Origy=40]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{4,5,...,20}{40,42,...,56}
	\DefinirCourbe[Nom=cf,Debut=5,Fin=19,Couleur=red,Trace]&lt;f&gt;{-2*x+3+24*log(2*x)}
	\TrouverAntecedents[Couleur=teal,Nom=JKL,Aff=false]{cf}{53}
	%tangente
	\TracerTangente%
		[Couleurs=cyan/gray,DecG=2.5,DecD=2.5,Noeud,AffPoint]{f}{(JKL-1)}
\end{GraphiqueTikz}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.8cm,y=1cm,Xmin=-7,Xmax=4,Ymin=-3,Ymax=5]
	\TracerAxesGrilles[Elargir=2.5mm]{-7,-6,...,4}{-3,-2,...,5}
	\def\LISTETEST{-6/4/-0.5Â§-5/2/-2Â§-4/0/-2Â§-2/-2/0Â§1/2/2Â§3/3.5/0.5}
	\DefinirCourbeSpline[Nom=splinetest,Trace,Couleur=olive]{\LISTETEST}
	\TracerTangente[Couleurs=red,Spline,AffPoint]{splinetest}{1}
	\TracerTangente%
		[Couleurs=blue,Spline,DecG=1.5,DecD=1.5,AffPoint]{splinetest}{-3}%
		&lt;pflflechegd&gt;
	\TracerTangente[Sens=g,Couleurs=orange,Spline,DecG=1.5,AffPoint]{splinetest}{3}
	\TracerTangente[Sens=d,Couleurs=violet,Spline,DecD=1.5,AffPoint]{splinetest}{-6}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\subsection{Suites rĂŠcurrentes et toiles}\label{toilerecurr}

L'idĂŠe est d'obtenir une commande pour tracer la \og toile \fg{} permettant d'obtenir -- graphiquement -- les termes d'une suite rĂŠcurrente dĂŠfinie par une relation $u_{n+1}=f(u_n)$.

La commande est compatible avec une fonction prĂŠcĂŠdemment dĂŠfinie, mais ĂŠgalement avec une courbe type \textit{spline} prĂŠcĂŠdemment dĂŠfinie.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\TracerToileRecurrence[clĂŠs]{fct ou courbe}
\end{tcblisting}

Le premier argument, \textit{optionnel} et entre \MontreCode{[...]}, contient les \MontreCode{ClĂŠs} suivantes :

\begin{itemize}
	\item \MontreCode{Couleur=...} (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{Spline=...} (\MontreCode{false} par dĂŠfaut) pour spĂŠcifier qu'une courbe \textit{spline} est utilisĂŠe ;
	\item \MontreCode{No=...} (\MontreCode{0} par dĂŠfaut) est l'indice initial ;
	\item \MontreCode{Uno=...} est qui est la valeur du terme initial (Ă&nbsp; donner obligatoirement !) ;
	\item \MontreCode{Nom=...} (\MontreCode{u} par dĂŠfaut) est le nom de la suite ;
	\item \MontreCode{Nb=...} (\MontreCode{5} par dĂŠfaut) ;
	\item \MontreCode{AffTermes=...} (\MontreCode{false} par dĂŠfaut) qui est un boolĂŠen pour afficher les termes ;
	\item \MontreCode{AffPointilles=...} (\MontreCode{true} par dĂŠfaut) pour afficher les pointillĂŠs ;
	\item \MontreCode{TailleLabel=...} (\MontreCode{\textbackslash small} par dĂŠfaut) ;
	\item \MontreCode{PosLabel=...} (\MontreCode{below} par dĂŠfaut).
\end{itemize}

Le second argument, obligatoire et entre \MontreCode{\{...\}} permet de prĂŠciser l'objet avec lequel il faut effectuer les tracĂŠs (fonction ou nom\_courbe).

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.75cm,y=0.75cm,Xmin=0,Xmax=10,Xgrille=1,Xgrilles=0.5,
	Ymin=0,Ymax=8,Ygrille=1,Ygrilles=0.5]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{auto}{auto}
	\DefinirCourbe[Couleur=red,Nom=cf,Debut=0,Fin=10,Trace]&lt;f&gt;{sqrt(5*x)+1}
	\TracerCourbe[Couleur=blue]{x}
	\TracerToileRecurrence[Couleur=orange,No=1,Uno=1]{f}
\end{GraphiqueTikz}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}[x=4cm,y=3cm,Xmin=0,Xmax=2.5,Xgrille=1,Xgrilles=0.25,
	Ymin=0,Ymax=1.25,Ygrille=0.5,Ygrilles=0.25]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{auto}{auto}
	\DefinirCourbeInterpo[Nom=interpotest,Couleur=blue,Trace]%
		{(0,0)(0.5,0.75)(1,0.25)(2,1)(2.5,0.25)}
	\TracerCourbe[Couleur=olive]{x}
	\TracerToileRecurrence%
		[AffTermes,Couleur=purple,Spline,No=0,Uno=2,PosLabel=above left]%
		{interpotest}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\section{Commandes spĂŠcifiques des fonctions de densitĂŠ}

\subsection{Loi normale}\label{loinormale}

L'idĂŠe est de proposer de quoi travailler avec des lois normales.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\DefinirLoiNormale[clĂŠs]&lt;nom fct&gt;{mu}{sigma}
\TracerLoiNormale[clĂŠs]{fct(x)}
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Nom} : nom du tracĂŠ (\MontreCode{gaussienne} par dĂŠfaut) ;
	\item \MontreCode{Trace} : boolĂŠen pour tracer la courbe(\MontreCode{false} par dĂŠfaut) ;
	\item \MontreCode{Couleur} : couleur du tracĂŠ, si demandĂŠ (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{Debut} : borne infĂŠrieure de l'ensemble de dĂŠfinition (\MontreCode{\textbackslash pflxmin} par dĂŠfaut) ;
	\item \MontreCode{Fin} : borne infĂŠrieure de l'ensemble de dĂŠfinition (\MontreCode{\textbackslash pflxmax} par dĂŠfaut) ;
	\item \MontreCode{Pas} : pas du tracĂŠ (il est dĂŠterminĂŠ \textit{automatiquement} au dĂŠpart mais peut ĂŞtre modifiĂŠ).
\end{itemize}

Ă noter que l'axe vertical est Ă&nbsp; adapter en fonction des paramĂ¨tres de la loi normale.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
		[x=1.25cm,y=15cm,Origx=5,Xmin=5,Xmax=15,Ymin=0,Ymax=0.3,
		Ygrille=0.1,Ygrilles=0.05]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\DefinirLoiNormale[Nom=gaussienne]&lt;phi&gt;{10}{1.5}
	\TracerIntegrale
		[Bornes=abs,Couleurs=blue/cyan!50]%
		{phi(x)}{7}{13}
	\TracerLoiNormale[Couleur=violet,Debut=5,Fin=15]{phi(x)}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\subsection{Loi du khi deux}\label{loikhideux}

L'idĂŠe est de proposer de quoi travailler avec des lois normales.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\DefinirLoiKhiDeux[clĂŠs]&lt;nom fct&gt;{k}
\TracerLoiKhiDeux[clĂŠs]{fct(x)}
\end{tcblisting}

Les \MontreCode{[clĂŠs]}, optionnelles, disponibles sont :

\smallskip

\begin{itemize}
	\item \MontreCode{Nom} : nom du tracĂŠ (\MontreCode{gaussienne} par dĂŠfaut) ;
	\item \MontreCode{Trace} : boolĂŠen pour tracer la courbe(\MontreCode{false} par dĂŠfaut) ;
	\item \MontreCode{Couleur} : couleur du tracĂŠ, si demandĂŠ (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{Debut} : borne infĂŠrieure de l'ensemble de dĂŠfinition (\MontreCode{\textbackslash pflxmin} par dĂŠfaut) ;
	\item \MontreCode{Fin} : borne infĂŠrieure de l'ensemble de dĂŠfinition (\MontreCode{\textbackslash pflxmax} par dĂŠfaut) ;
	\item \MontreCode{Pas} : pas du tracĂŠ (il est dĂŠterminĂŠ \textit{automatiquement} au dĂŠpart mais peut ĂŞtre modifiĂŠ).
\end{itemize}

Ă noter que l'axe vertical est Ă&nbsp; adapter en fonction du paramĂ¨tre de la loi du khi deux.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}[
		x=1.5cm,y=7.5cm,
		Xmin=0,Xmax=8,Xgrille=1,Xgrilles=0.5,
		Ymin=0,Ymax=0.5,Ygrille=0.1,Ygrilles=0.05
		]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\DefinirLoiKhiDeux[Couleur=red,Debut=0.25,Trace]&lt;phiA&gt;{1}
	\DefinirLoiKhiDeux[Couleur=blue,Trace]&lt;phiB&gt;{2}
	\DefinirLoiKhiDeux[Couleur=orange,Trace]&lt;phiC&gt;{3}
	\DefinirLoiKhiDeux[Couleur=violet,Trace]&lt;phiD&gt;{4}
	\DefinirLoiKhiDeux[Couleur=yellow,Trace]&lt;phiE&gt;{5}
	\DefinirLoiKhiDeux[Couleur=teal,Trace]&lt;phiF&gt;{6}
\end{GraphiqueTikz}
\end{tcblisting}

\subsection{Histogramme pour une loi binomiale}\label{histobinom}

Il est ĂŠgalement possible (d'une maniĂ¨re moins explicite que dans \MontreCode{ProfLycee}) de reprĂŠsenter l'histogramme d'une loi binomiale (\MontreCode{ProfLycee} permet de dĂŠterminer les unitĂŠs automatiquement, ici elles doivent ĂŞtre prĂŠcisĂŠes et connues).

Il est ĂŠgalement possible de rajouter la loi normale \og associĂŠe \fg.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\TracerHistoBinomiale[clĂŠs]&lt;nom fct normale&gt;{n}{p}
\end{tcblisting}

Le premier argument, optionnel et entre \MontreCode{[...]} propose les clĂŠs suivantes :

\begin{itemize}

	\item \MontreCode{Plage} : plage, sous la forme \MontreCode{a-b} du coloriage ĂŠventuel ;
	\item \MontreCode{CouleurPlage} : couleur de la plage ĂŠventuelle ;
	\item \MontreCode{ClipX} : restriction de l'axe Ox, sous la forme \MontreCode{a-b} ;
	\item \MontreCode{AffNormale} : boolĂŠen (\MontreCode{true} par dĂŠfaut) pour rajouter la loi normale ;
	\item \MontreCode{CouleurNormale} : couleur pour la loi normale.
\end{itemize}

Les arguments obligatoires et entre \MontreCode{\{...\}} permettent de spĂŠcifier les paramĂ¨tres de la loi binomiale.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
%les unitĂŠs ont ĂŠtĂŠ dĂŠterminĂŠes au prĂŠalable...
\begin{GraphiqueTikz}[x=0.2cm,y=50cm,Origx=-0.5,Xmin=-0.5,Xmax=50.5,
	Xgrille=5,Xgrilles=1,Ymin=0,Ymax=0.12,Ygrille=0.01,Ygrilles=0.001]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small,Grille=false]%
		{0,5,...,50}{auto}
	\TracerHistoBinomiale{50}{0.4}
\end{GraphiqueTikz}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
%les unitĂŠs ont ĂŠtĂŠ dĂŠterminĂŠes au prĂŠalable...
\begin{GraphiqueTikz}[x=0.5cm,y=100cm,Origx=14.5,Xmin=14.5,Xmax=35.5,
	Xgrille=5,Xgrilles=1,Ymin=0,Ymax=0.09,Ygrille=0.01,Ygrilles=0.001]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small,Grille=false]%
		{15,20,...,35}{auto}
	\TracerHistoBinomiale%
		[ClipX=15-35,Plage=18-25,CouleurPlage=teal,AffNormale,CouleurNormale=red]%
		{1000}{0.02}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\section{Commandes spĂŠcifiques des mĂŠthodes intĂŠgrales}

\subsection{MĂŠthodes gĂŠomĂŠtriques}\label{methodesintergrales}

L'idĂŠe est de proposer plusieurs mĂŠthodes graphiques pour illustrer graphiquement une intĂŠgrale, via :

\begin{itemize}
	\item une mĂŠthode des rectangles (Gauche, Droite ou Milieu) ;
	\item la mĂŠthode des trapĂ¨zes.
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\RepresenterMethodeIntegrale[clĂŠs]&lt;fonction&gt;{a}{b}
\end{tcblisting}

Les \MontreCode{ClĂŠs} disponibles sont :

\begin{itemize}
	\item \MontreCode{Spline} : boolĂŠen pour prĂŠciser qu'un spline est utilisĂŠ, \MontreCode{false} par dĂŠfaut ;
	\item \MontreCode{Couleur} : couleur des tracĂŠs, \MontreCode{red} par dĂŠfaut ;
	\item \MontreCode{NbSubDiv} : nombre de subdivisions, \MontreCode{10} par dĂŠfaut ;
	\item \MontreCode{Methode} : mĂŠthode gĂŠomĂŠtrique utilisĂŠe, parmi parmi \MontreCode{RectanglesGauche / RectanglesDroite / RectanglesMilieu / Trapezes} pour spĂŠcifier la mĂŠthode utilisĂŠe, \MontreCode{RectanglesGauche} par dĂŠfaut ;
	\item \MontreCode{Remplir} : boolĂŠen, \MontreCode{true} par dĂŠfaut, pour remplir les ĂŠlĂŠments graphiques ;
	\item \MontreCode{CouleurRemplissage} : couleur de remplissage, dĂŠfinie par rapport Ă&nbsp; la couleur principale par dĂŠfaut ;
	\item \MontreCode{Opacite} : opacitĂŠ, \MontreCode{0.25} par dĂŠfaut, du remplissage.
\end{itemize}

\smallskip

Le deuxiĂ¨me argument, optionnel et entre \MontreCode{&lt;...&gt;}, correspond Ă&nbsp; la fonction ou le spline \textbf{prĂŠcĂŠdemment dĂŠfinie} !

\smallskip

Les deux derniers arguments, obligatoires, correspondent aux bornes de l'intĂŠgrale.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}
	[x=0.66cm,y=0.033cm,Xmin=0,Xmax=21,Xgrille=2,Xgrilles=1,
	Ymin=0,Ymax=160,Ygrille=20,Ygrilles=10]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\DefinirCourbe[Couleur=red,Nom=cf,Debut=1,Fin=20,Trace]&lt;f&gt;{80*x*exp(-0.2*x)}
	\RepresenterMethodeIntegrale[Couleur=teal]&lt;f&gt;{5}{15}
\end{GraphiqueTikz}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}
	[x=0.66cm,y=0.033cm,Xmin=0,Xmax=21,Xgrille=2,Xgrilles=1,
	Ymin=0,Ymax=160,Ygrille=20,Ygrilles=10]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\DefinirCourbe[Couleur=red,Nom=cf,Debut=1,Fin=20,Trace]&lt;f&gt;{80*x*exp(-0.2*x)}
	\RepresenterMethodeIntegrale
		[Methode=RectanglesDroite,Couleur=orange,NbSubDiv=7]&lt;f&gt;{1}{10}
\end{GraphiqueTikz}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}
	[x=0.66cm,y=0.033cm,Xmin=0,Xmax=21,Xgrille=2,Xgrilles=1,
	Ymin=0,Ymax=160,Ygrille=20,Ygrilles=10]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\DefinirCourbe[Couleur=red,Nom=cf,Debut=1,Fin=20,Trace]&lt;f&gt;{80*x*exp(-0.2*x)}
	\RepresenterMethodeIntegrale
	[Methode=RectanglesMilieu,Couleur=yellow,NbSubDiv=25]&lt;f&gt;{1}{20}
\end{GraphiqueTikz}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}
	[x=0.66cm,y=0.033cm,Xmin=0,Xmax=21,Xgrille=2,Xgrilles=1,
	Ymin=0,Ymax=160,Ygrille=20,Ygrilles=10]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\DefinirCourbe[Couleur=red,Nom=cf,Debut=1,Fin=20,Trace]&lt;f&gt;{80*x*exp(-0.2*x)}
	\RepresenterMethodeIntegrale
	[Methode=Trapezes,Couleur=pink,Remplir=false]&lt;f&gt;{1}{20}
\end{GraphiqueTikz}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.8cm,y=1cm,Xmin=-7,Xmax=4,Ymin=0,Ymax=5]
	\TracerAxesGrilles[Elargir=2.5mm]{auto}{auto}
	\DefinirListeSpline{-6.5/0/2.5Â§-2/4/0Â§3.75/0/-1}[\lstsplineB]
	\DefinirCourbeSpline[Nom=splinered]{\lstsplineB}
	\TracerCourbeSpline[Couleur=red]{\lstsplineB}
	\RepresenterMethodeIntegrale[Methode=RectanglesMilieu,Spline,Couleur=teal]&lt;splinered&gt;{-5}{1.25}
\end{GraphiqueTikz}
\end{tcblisting}

\subsection{MĂŠthode de Monte-Carlo}\label{montecarlo}

L'idĂŠe est de proposer une commande pour simuler un calcul intĂŠgral via la mĂŠthode de Monte-Carlo.

Le code se charge de simuler les \textit{tirages}, et les rĂŠsultats peuvent ĂŞtre stockĂŠs dans des macros.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\SimulerMonteCarlo[clĂŠs]&lt;fonction&gt;{nb essais}[\nbptsmcok][\nbptsmcko]
\end{tcblisting}

Les \MontreCode{ClĂŠs} disponibles sont :

\begin{itemize}
	\item \MontreCode{Couleurs} : couleurs des points, \MontreCode{blue/red} par dĂŠfaut ;
	\item \MontreCode{BornesX} : bornes \textit{horizontales} pour la simulation, valant \MontreCode{\textbackslash pflxmin,\textbackslash pflxmax} par dĂŠfaut ;
	\item \MontreCode{BornesY} : bornes \textit{verticales} pour la simulation, valant \MontreCode{\textbackslash pflymin,\textbackslash pflymax} par dĂŠfaut.
\end{itemize}

Le deuxiĂ¨me argument, optionnel et entre \MontreCode{&lt;...&gt;}, est la fonction \textbf{prĂŠcĂŠdemment dĂŠfinie} Ă&nbsp; utiliser.

\smallskip

Les deux derniers arguments, optionnels et entre \MontreCode{[...]}, sont les macros dans lesquelles sont stockĂŠes les rĂŠsultats de la simulation. Ces macros sont \MontreCode{\textbackslash nbptsmcok} et \MontreCode{\textbackslash nbptsmcko} par dĂŠfaut.

Ă noter que la macro \MontreCode{\textbackslash nbptsmc} permet de rĂŠcupĂŠrer le nombre de points utilisĂŠs.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
%avec \sisetup{group-minimum-digits=4} pour le formatage des "milliers"

\begin{GraphiqueTikz}%
	[x=10cm,y=10cm,Xmin=0,Xmax=1,Xgrille=0.1,Xgrilles=0.05,
	Ymin=0,Ymax=1,Ygrille=0.1,Ygrilles=0.05]
	\TracerAxesGrilles[Elargir=2.5mm,Dernier]{auto}{auto}
	\DefinirCourbe[Trace,Couleur=teal,Pas=0.001]&lt;f&gt;{sqrt(1-x^2)}
	\SimulerMonteCarlo&lt;f&gt;{5000}
\end{GraphiqueTikz}

Le nombre de points bleus est de \textcolor{blue}{\num{\nbptsmcok}},
le nombre de points rouges est de \textcolor{red}{\num{\nbptsmcko}}.

La proportion de points bleus est de $\frac{\num{\nbptsmcok}}{\num{\nbptsmc}}
\approx \ArrondirNum[4]{\nbptsmcok/\nbptsmc}$
et $\frac{\pi}{4} \approx \ArrondirNum[4]{pi/4}$.
\end{tcblisting}

\pagebreak

\section{Commandes spĂŠcifiques des statistiques}

\subsection{Limitations}

Compte-tenu des spĂŠcificitĂŠs de \TikZ, il est conseillĂŠ de ne pas utiliser de valeurs trop \textit{grandes} au niveau de axes (cela peut coincer avec des annĂŠe par exemple\ldots), ou bien il faudra \textit{transformer} les valeurs des axes et/ou des donnĂŠes pour que tout s'affiche comme il faut (attention ĂŠgalement aux rĂŠgressions, aux calculs\ldots).

\subsection{Courbe des ECC/FCC (1 variable)}\label{cbeECC}

Il est possible de travailler sur une reprĂŠsentation de la courbe des ECC/FCC.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
\TracerCourbeECC[clĂŠs]{liste valeurs}{liste effectifs}
\end{tcblisting}

Le code se charge de dĂŠterminer une valeur des paramĂ¨tres, pour utilisation ultĂŠrieure (avec arrondis ĂŠventuels car ils sont obtenus par \textit{conversions}) :

\begin{itemize}
	\item le premier quartile, $Q_1$, est stockĂŠ dans la macro \MontreCode{\textbackslash ValPremQuartile} ;
	\item la mĂŠdiane, mĂŠd, est stockĂŠ dans la macro \MontreCode{\textbackslash ValMed} ;
	\item le troisiĂ¨me quartile, $Q_3$, est stockĂŠ dans la macro \MontreCode{\textbackslash ValTroisQuartile}.
\end{itemize}

Les \MontreCode{ClĂŠs} disponibles sont :

\begin{itemize}
	\item \MontreCode{Couleur=...} : couleur du tracĂŠ, \MontreCode{black} par dĂŠfaut ;
	\item \MontreCode{AffParams} : boolĂŠen, \MontreCode{true} par dĂŠfaut, pour afficher les paramĂ¨tres ;
	\item \MontreCode{CouleursParams=...} : couleur des paramĂ¨tres, \MontreCode{black} par dĂŠfaut ;
	\item \MontreCode{TraitsComplets} : boolĂŠen, \MontreCode{true} par dĂŠfaut, pour afficher les pointillĂŠs en entier
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}[x=0.15cm,y=0.03cm,Xmin=0,Xmax=75,Xgrille=10,Xgrilles=5,
	Ymin=0,Ymax=200,Ygrille=20,Ygrilles=10]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{auto}{auto}
	\TracerCourbeECC%
		[Couleur=blue,CouleursParams={lime!75!black/pink!75!black},
		TraitsComplets=false]%
		{0,15,25,35,40,45,55,65,75}%
		{15,20,50,30,35,25,15,10}
	%ajouts 'manuels'
	\PlacerTexte[Couleur=lime!75!black,Police=\small,Position=below]%
		{(\ValPremQuartile,0)}{\ArrondirNum[0]{\ValPremQuartile}}
	\PlacerTexte[Couleur=lime!75!black,Police=\small,Position=below]%
		{(\ValTroisQuartile,0)}{\ArrondirNum[0]{\ValTroisQuartile}}
	\PlacerTexte[Couleur=pink!75!black,Police=\small,Position=below]%
		{(\ValMed,0)}{\ArrondirNum[0]{\ValMed}}
\end{GraphiqueTikz}

\end{tcblisting}

\subsection{Le nuage de points (2 variables)}\label{nuage}

En marge des commandes liĂŠes aux fonctions, il est ĂŠgalement possible de reprĂŠsenter des sĂŠries statistiques doubles.

\smallskip

Le paragraphe suivant montre que l'ajout d'une clĂŠ permet de rajouter la droite d'ajustement linĂŠaire.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dans l'environnement GraphiqueTikz
\TracerNuage[clĂŠs]{ListeX}{ListeY}
\end{tcblisting}

La \MontreCode{[clĂŠ]} optionnelle est :

\smallskip

\begin{itemize}
	\item \MontreCode{CouleurNuage} : couleur des points du nuage (\MontreCode{black} par dĂŠfaut).
\end{itemize}

\smallskip

Les arguments, obligatoires, permettent de spĂŠcifier :

\smallskip

\begin{itemize}
	\item la liste des abscisses ;
	\item la liste des ordonnĂŠes.
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.075cm,y=0.03cm,Xmin=0,Xmax=160,Xgrille=20,Xgrilles=10,
	Origy=250,Ymin=250,Ymax=400,Ygrille=25,Ygrilles=5]
	%prĂŠparation de la fenĂŞtre
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{0,10,...,160}{250,275,...,400}
	%nuage de points
	\TracerNuage[Style=x,CouleurNuage=red]{0,50,100,140}{275,290,315,350}
\end{GraphiqueTikz}
\end{tcblisting}

\subsection{La droite de rĂŠgression (2 variables)}\label{reglin}

La droite de rĂŠgression linĂŠaire (obtenue par la mĂŠthode des moindres carrĂŠs) peut facilement ĂŞtre rajoutĂŠe, en utilisant la clĂŠ \MontreCode{TracerDroite}.

\smallskip

Dans ce cas, de nouvelles clĂŠs sont disponibles :

\smallskip

\begin{itemize}
	\item \MontreCode{CouleurDroite} : couleur de la droite (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{Arrondis} : prĂŠcision des coefficients (\MontreCode{vide} par dĂŠfaut) ;
	\item \MontreCode{Debut} : abscisse initiale du tracĂŠ (\MontreCode{\textbackslash pflxmin} par dĂŠfaut) ;
	\item \MontreCode{Fin} : abscisse terminale du tracĂŠ (\MontreCode{\textbackslash pflxmax} par dĂŠfaut) ;
	\item \MontreCode{Nom} : nom du tracĂŠ, pour exploitation ultĂŠrieure (\MontreCode{reglin} par dĂŠfaut).
\end{itemize}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=0.075cm,y=0.03cm,Xmin=0,Xmax=160,Xgrille=20,Xgrilles=10,
	Origy=250,Ymin=250,Ymax=400,Ygrille=25,Ygrilles=5]
	\TracerAxesGrilles[Elargir=2.5mm,Police=\small]{0,10,...,160}{250,275,...,400}
	%nuage et droite
	\TracerNuage%
		[CouleurNuage=red,CouleurDroite=brown,TracerDroite]%
		{0,50,100,140}{275,290,315,350}
	%image
	\PlacerImages[Couleurs=cyan/magenta,Traits]{d}{120}
	%antĂŠcĂŠdents
	\PlacerAntecedents[Style=x,Couleurs=blue/green!50!black,Traits]{reglin}{300}
\end{GraphiqueTikz}
\end{tcblisting}

\subsection{Autres rĂŠgressions (2 variables)}\label{regressions}

En partenariat avec le package \MontreCode{xint-regression}, chargĂŠ par le package (mais \textit{dĂŠsactivable} via l'option \MontreCode{[nonxintreg]}), il est possible de travailler sur d'autres types de rĂŠgression :

\begin{itemize}
	\item linĂŠaire \fbox{$ax+b$} ;
	\item quadratique \fbox{$ax^2+bx+c$} ;
	\item cubique \fbox{$ax^3+bx^2+cx+d$} ;
	\item puissance \fbox{$ax^b$} ;
	\item exponentielle \fbox{$ab^x$} ou \fbox{$e^{ax+b}$} ou \fbox{$b e^{ax}$} ou \fbox{$C + be^{ax}$} ;
	\item logarithmique \fbox{$a+b\ln(x)$} ;
	\item hyperbolique \fbox{$a+\displaystyle\frac{b}{x}$}.
\end{itemize}

La commande, similaire Ă&nbsp; celle de dĂŠfinition d'une courbe, est :

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
\TracerAjustement[clĂŠs]&lt;non fct&gt;{type}&lt;arrondis&gt;{listex}{listey}
\end{tcblisting}

Les \MontreCode{[clĂŠs]} disponibles sont, de maniĂ¨re classique :

\begin{itemize}
	\item \MontreCode{Debut} : borne infĂŠrieure de l'ensemble de dĂŠfinition (\MontreCode{\textbackslash pflxmin} par dĂŠfaut) ;
	\item \MontreCode{Fin} : borne infĂŠrieure de l'ensemble de dĂŠfinition (\MontreCode{\textbackslash pflxmax} par dĂŠfaut) ;
	\item \MontreCode{Nom} : nom de la courbe (important pour la suite !) ;
	\item \MontreCode{Couleur} : couleur du tracĂŠ (\MontreCode{black} par dĂŠfaut) ;
	\item \MontreCode{Pas} : pas du tracĂŠ (il est dĂŠterminĂŠ \textit{automatiquement} au dĂŠpart mais peut ĂŞtre modifiĂŠ).
\end{itemize}

\pagebreak

Le deuxiĂ¨me argument, optionnel et entre \MontreCode{&lt;...&gt;} permet de nommer la fonction de rĂŠgression.

Le troisiĂ¨me argument, obligatoire et entre \MontreCode{\{...\}} permet de choisir le type de rĂŠgression, parmi :

\begin{itemize}
	\item \MontreCode{lin} : linĂŠaire \fbox{$ax+b$} ;
	\item \MontreCode{quad} : quadratique \fbox{$ax^2+bx+c$} ;
	\item \MontreCode{cub} : cubique \fbox{$ax^3+bx^2+cx+d$} ;
	\item \MontreCode{pow} : puissance \fbox{$ax^b$} ;
	\item \MontreCode{expab} : exponentielle \fbox{$ab^x$}
	\item \MontreCode{hyp} : hyperbolique \fbox{$a+\displaystyle\frac{b}{x}$} ;
	\item \MontreCode{log} : logarithmique \fbox{$a+b\ln(x)$} ;
	\item \MontreCode{exp} : exponentielle \fbox{$e^{ax+b}$} ;
	\item \MontreCode{expalt} : exponentielle \fbox{$be^{ax}$} ;
	\item \MontreCode{expoff=C} : exponentielle \fbox{$C + be^{ax}$}.
\end{itemize}

Le quatriĂ¨me argument, optionnel et entre \MontreCode{&lt;...&gt;} permet de spĂŠcifier le ou les arrondis pour les coefficients de la fonction de rĂŠgression.

Les deux derniers arguments sont les listes des valeurs de X et de Y.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\def\LISTEXX{0,50,100,140}\def\LISTEYY{275,290,315,350}%
ListeX := \LISTEXX\\
ListeY := \LISTEYY

\begin{GraphiqueTikz}
	[x=0.05cm,y=0.04cm,Xmin=0,Xmax=160,Xgrille=20,Xgrilles=10,
	Origy=250,Ymin=250,Ymax=400,Ygrille=25,Ygrilles=5]
	%prĂŠparation de la fenĂŞtre
	\TracerAxesGrilles[Elargir=2.5mm,Police=\footnotesize]{auto}{auto}
	%nuage de points
	\TracerNuage[Style=o,CouleurNuage=red]{\LISTEXX}{\LISTEYY}
	%ajustement expoffset
	\TracerAjustement[Couleur=blue,Nom=ajust]&lt;ajust&gt;{expoff=250}{\LISTEXX}{\LISTEYY}
	%exploitations
	\PlacerImages[Couleurs=cyan/magenta,Traits]{ajust}{80}
	\PlacerAntecedents[Style=x,Couleurs=blue/green!50!black,Traits]{ajust}{325}
\end{GraphiqueTikz}

\xintexpoffreg[offset=250,round=3/1]{\LISTEXX}{\LISTEYY}%
On obtient $y=250+\num{\expregoffb}\text{e}^{\num{\expregoffa}x}$
\end{tcblisting}

\pagebreak

\section{Codes source des exemples de la page d'accueil}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}[x=0.85cm,y=0.35cm,Xmin=0,Xmax=10,Ymin=0,Ymax=16]
	%prĂŠparation de la fenĂŞtre
	\TracerAxesGrilles[Derriere,Elargir=2.5mm,Police=\small]{0,1,...,10}{0,2,...,16}
	%dĂŠf des fonctions avec nom courbe + nom fonction + expression (tracĂŠs Ă&nbsp; la fin !)
	\DefinirCourbe[Nom=cf]&lt;f&gt;{3*x-6}
	\DefinirCourbe[Nom=cg]&lt;g&gt;{-(x-6)^2+12}
	%antĂŠcĂŠdents et intersection
	\TrouverIntersections[Aff=false,Nom=K]{cf}{cg}
	\TrouverAntecedents[AffDroite,Couleur=orange,Nom=I]{cg}{8}
	\TrouverAntecedents[Aff=false,Nom=J]{cg}{0}
	%intĂŠgrale sous une courbe, avec intersection
	\TracerIntegrale%
		[Couleurs=blue/purple,Bornes=noeuds,Style=hachures,Hachures=bricks]%
		{g(x)}%
		{(I-2)}{(J-2)}
	%intĂŠgrale entre les deux courbes
	\TracerIntegrale[Bornes=noeuds,Type=fct/fct]%
		{f(x)}[g(x)]%
		{(K-1)}{(K-2)}
	%tracĂŠ des courbes et des points
	\TracerCourbe[Couleur=red]{f(x)}
	\TracerCourbe[Couleur=teal]{g(x)}
	\PlacerPoints&lt;\small&gt;{(K-1)/below right/L,(K-2)/above left/M}%
	\PlacerPoints[violet]&lt;\small&gt;{(I-1)/above left/D,(I-2)/above right/E}%
	%tangente
	\TracerTangente[Couleurs=pink!75!black/yellow,kl=2,kr=2,AffPoint]{g}{5}
	%images
	\PlacerImages[Couleurs=cyan]{g}{7,7.25,7.5}
	%surimpression des axes
	\TracerAxesGrilles[Devant,Elargir=2.5mm]{0,1,...,10}{0,2,...,16}
\end{GraphiqueTikz}
\end{tcblisting}

\pagebreak

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\begin{GraphiqueTikz}%
	[x=3.5cm,y=4cm,
	Xmin=0,Xmax=3.5,Xgrille=pi/12,Xgrilles=pi/24,
	Ymin=-1.05,Ymax=1.05,Ygrille=0.2,Ygrilles=0.05]
	%prĂŠparation de la fenĂŞtre
	\TracerAxesGrilles[Derriere,Elargir=2.5mm,Format=ntrig/nsqrt]{}{}
	%rajouter des valeurs
	\RajouterValeursAxeX{0.25,1.4,3.3}{\num{0.25},\num{1.4},\num{3.3}}
	%fonction trigo (dĂŠf + tracĂŠ)
	\DefinirCourbe[Nom=ccos,Debut=0,Fin=pi]&lt;fcos&gt;{cos(x)}
	\DefinirCourbe[Nom=csin,Debut=0,Fin=pi]&lt;fsin&gt;{sin(x)}
	%intĂŠgrale
	\TrouverIntersections[Aff=false,Nom=JKL]{ccos}{csin}
	\TracerIntegrale%
		[Bornes=noeud/abs,Type=fct/fct,Couleurs=cyan/cyan!50]%
		{fsin(x)}[fcos(x)]%
		{(JKL-1)}{pi}
	%tracĂŠ des courbes
	\TracerCourbe[Couleur=red,Debut=0,Fin=pi]{fcos(x)}
	\TracerCourbe[Couleur=olive,Debut=0,Fin=pi]{fsin(x)}
	%antĂŠcĂŠdent(s)
	\PlacerAntecedents[Couleurs=blue/teal!50!black,Traits]{ccos}{-0.25}
	\PlacerAntecedents[Couleurs=red/magenta!50!black,Traits]{csin}{0.5}
	\PlacerAntecedents[Couleurs=orange/orange!50!black,Traits]{csin}{sqrt(2)/2}
	\PlacerAntecedents[Couleurs=green!50!black/green,Traits]{csin}{sqrt(3)/2}
	%surimpression axes
	\TracerAxesGrilles[Devant,Format=ntrig/nsqrt]%
		{pi/6,pi/4,pi/3,pi/2,2*pi/3,3*pi/4,5*pi/6,pi}
		{0,sqrt(2)/2,1/2,sqrt(3)/2,1,-1,-sqrt(3)/2,-1/2,-sqrt(2)/2}
\end{GraphiqueTikz}
\end{tcblisting}

\newpage

\section{Commandes auxiliaires}

\subsection{Intro}

En marge des commandes purement \textit{graphiques}, quelques commandes auxiliaires sont disponibles :

\begin{itemize}
	\item une pour formater un nombre avec une prĂŠcision donnĂŠe ;
	\item une pour travailler sur des nombres alĂŠatoires, avec contraintes.
\end{itemize}

\subsection{Arrondi formatĂŠ}\label{numarrond}

La commande \MontreCode{\textbackslash ArrondirNum} permet de formater, grĂ˘ce au package \MontreCode{siunitx}, un nombre (ou un calcul), avec une prĂŠcision donnĂŠe. Cela peut ĂŞtre \textit{utile} pour formater des rĂŠsultats obtenus grĂ˘ce aux commandes de rĂŠcupĂŠration des coordonnĂŠes, par exemple.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
\ArrondirNum[prĂŠcision]{calcul xint}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
\ArrondirNum{1/3}\\
\ArrondirNum{16.1}\\
\ArrondirNum[3]{log(10)}\\
\end{tcblisting}

\subsection{Nombre alĂŠatoire sous contraintes}\label{nbalea}

L'idĂŠe de cette deuxiĂ¨me commande est de pouvoir dĂŠterminer un nombre alĂŠatoire :

\begin{itemize}
	\item entier ou dĂŠcimal ;
	\item sous contraintes (entre deux valeurs fixĂŠes).
\end{itemize}

Cela peut permettre, par exemple, de travailler sur des courbes avec points \textit{alĂŠatoires}, mais respectant certaines contraintes.

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
\ChoisirNbAlea(*)[precision (dĂŠf 0)]{borne inf}{borne sup}[\macro]
\end{tcblisting}

La version ĂŠtoilĂŠe prend les contraintes sous forme stricte ($\text{borne inf} &lt; \text{macro} &lt; \text{borne sup}$) alors que la version normale prend les contraintes sous forme large ($\text{borne inf} \leq \text{macro} \leq \text{borne sup}$).

\smallskip

Ă noter que les \textit{bornes} peuvent ĂŞtre des \textit{macros} existantes !

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
%un nombre (2 chiffres aprĂ¨s la virgule) entre 0.75 et 0.95
%un nombre (2 chiffres aprĂ¨s la virgule) entre 0.05 et 0.25
%un nombre (2 chiffres aprĂ¨s la virgule) entre 0.55 et \YrandMax
%un nombre (2 chiffres aprĂ¨s la virgule) entre \YrandMin et 0.45
\ChoisirNbAlea[2]{0.75}{0.95}[\YrandMax]%
\ChoisirNbAlea[2]{0.05}{0.25}[\YrandMin]%
\ChoisirNbAlea*[2]{0.55}{\YrandMax}[\YrandA]%
\ChoisirNbAlea*[2]{\YrandMin}{0.45}[\YrandB]%
%vĂŠrification
\num{\YrandMax} \&amp; \num{\YrandMin} \&amp; \num{\YrandA} \&amp; \num{\YrandB}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
%un nombre (2 chiffres aprĂ¨s la virgule) entre 0.75 et 0.95
%un nombre (2 chiffres aprĂ¨s la virgule) entre 0.05 et 0.25
%un nombre (2 chiffres aprĂ¨s la virgule) entre 0.55 et \YrandMax
%un nombre (2 chiffres aprĂ¨s la virgule) entre \YrandMin et 0.45
\ChoisirNbAlea[2]{0.75}{0.95}[\YrandMax]%
\ChoisirNbAlea[2]{0.05}{0.25}[\YrandMin]%
\ChoisirNbAlea*[2]{0.55}{\YrandMax}[\YrandA]%
\ChoisirNbAlea*[2]{\YrandMin}{0.45}[\YrandB]%
%vĂŠrification
\num{\YrandMax} \&amp; \num{\YrandMin} \&amp; \num{\YrandA} \&amp; \num{\YrandB}
\end{tcblisting}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
%la courbe est prĂŠvue pour qu'il y ait 3 antĂŠcĂŠdents
\ChoisirNbAlea[2]{0.75}{0.95}[\YrandMax]%
\ChoisirNbAlea[2]{0.05}{0.25}[\YrandMin]%
\ChoisirNbAlea*[2]{0.55}{\YrandMax}[\YrandA]%
\ChoisirNbAlea*[2]{\YrandMin}{0.45}[\YrandB]%

\begin{GraphiqueTikz}
	[x=0.075cm,y=7.5cm,Xmin=0,Xmax=150,Xgrille=10,Xgrilles=5,
	Ymin=0,Ymax=1,Ygrille=0.1,Ygrilles=0.05]
	\TracerAxesGrilles[Dernier,Elargir=2.5mm]{auto}{auto}
	\DefinirCourbeInterpo[Couleur=red,Trace,Nom=fonctiontest,Tension=0.75]
	{(0,\YrandA)(40,\YrandMin)(90,\YrandMax)(140,\YrandB)}
	\TrouverAntecedents[Aff=false,Nom=ANTECED]{fonctiontest}{0.5}
	\PlacerAntecedents[Couleurs=blue/teal,Traits]{fonctiontest}{0.5}
	\RecupererAbscisse{(ANTECED-1)}[\Aalpha]
	\RecupererAbscisse{(ANTECED-2)}[\Bbeta]
	\RecupererAbscisse{(ANTECED-3)}[\Cgamma]
\end{GraphiqueTikz}

Les solutions de $f(x)=\num{0.5}$ sont, par lecture graphique :
$\begin{cases}
	\alpha \approx \ArrondirNum[0]{\Aalpha} \\
	\beta \approx \ArrondirNum[0]{\Bbeta} \\
	\gamma \approx \ArrondirNum[0]{\Cgamma}
\end{cases}$.
\end{tcblisting}

\newpage

\section{Liste des commandes}

Les commandes disponibles sont :

\NewDocumentCommand\lstcmd{ m m m }{%
	\item[\footnotesize\texttt{#1}]{\footnotesize : \mintinline{latex}|#2|\hfill{}page \pageref{#3}}
}

\begin{description}[noitemsep]
	\lstcmd{environnement~~}{\begin{GraphiqueTikz}...\end{GraphiqueTikz}}{creaenvt}
	\lstcmd{axes et grilles}{\TracerAxesGrille}{creaaxesgr}
	\lstcmd{aj val axes X~~}{\RajouterValeursAxeX}{ajoutvals}
	\lstcmd{aj val axes Y~~}{\RajouterValeursAxeY}{ajoutvals}
	\lstcmd{def fonction~~~}{\DefinirCourbe}{deftracfct}
	\lstcmd{tracĂŠ courbe~~~}{\TracerCourbe}{deftracfct}
	\lstcmd{def interpo~~~~}{\DefinirCourbeInterpo}{deftracinterpo}
	\lstcmd{tracĂŠ interpo~~}{\TracerCourbeInterpo}{deftracinterpo}
	\lstcmd{def spline~~~~~}{\DefinirCourbeSpline}{deftracfctspline}
	\lstcmd{tracĂŠ spline~~~}{\TracerCourbeSpline}{deftracfctspline}
	\lstcmd{tracĂŠ droite~~~}{\TracerDroite}{tracdroite}
	\lstcmd{asymptote vert~}{\TracerAsymptote}{tracdroite}
	\lstcmd{def points~~~~~}{\DefinirPts}{defpts}
	\lstcmd{def image~~~~~~}{\DefinirImage}{defpts}
	\lstcmd{marq pts~~~~~~~}{\MarquerPts}{markpts}
	\lstcmd{placer txt~~~~~}{\PlacerTexte}{placetxt}
	\lstcmd{pts discont~~~~}{\AfficherPtsDiscont}{ptsdiscont}
	\lstcmd{rĂŠcup absc~~~~~}{\RecupererAbscisse}{recupcoordo}
	\lstcmd{rĂŠcup ordo~~~~~}{\RecupererOrdonnee}{recupcoordo}
	\lstcmd{rĂŠcup coordos~~}{\RecupererCoordonnees}{recupcoordo}
	\lstcmd{images~~~~~~~~~}{\PlacerImages}{images}
	\lstcmd{antĂŠcĂŠdents~~~~}{\TrouverAntecedents}{defanteced}
	\lstcmd{antĂŠcĂŠdents~~~~}{\PlacerAntecedents}{tracanteced}
	\lstcmd{intersection~~~}{\TrouverIntersections}{intersect}
	\lstcmd{maximum~~~~~~~~}{\TrouverMaximum}{maximum}
	\lstcmd{minimum~~~~~~~~}{\TrouverMinimum}{minimum}
	\lstcmd{intĂŠgrale~~~~~~}{\TracerIntegrale}{integr}
	\lstcmd{mĂŠthodes int~~~}{\RepresenterMethodeIntegrale}{methodesintergrales}
	\lstcmd{Monte-Carlo~~~~}{\SimulerMonteCarlo}{montecarlo}
	\lstcmd{tangente~~~~~~~}{\TracerTangente}{tgte}
	\lstcmd{toile rĂŠcurr~~~}{\TracerToileRecurrence}{toilerecurr}
	\lstcmd{loi normale~~~~}{\DefinirLoiNormale}{loinormale}
	\lstcmd{loi normale~~~~}{\TracerLoiNormale}{loinormale}
	\lstcmd{loi khideux~~~~}{\DefinirLoiKhiDeux}{loikhideux}
	\lstcmd{loi khideux~~~~}{\TracerLoiKhiDeux}{loikhideux}
	\lstcmd{loi binom~~~~~~}{\TracerHistoBinomiale}{histobinom}
	\lstcmd{courbe ECC~~~~~}{\TracerCourbeECC}{cbeECC}
	\lstcmd{stats 2 var~~~~}{\TracerNuage}{nuage}
	\lstcmd{regressions~~~~}{\TracerAjustement}{regressions}
	\lstcmd{arrondi~~~~~~~~}{\ArrondirNum}{numarrond}
	\lstcmd{nb alĂŠat~~~~~~~}{\ChoisirNbAlea}{nbalea}
\end{description}

\newpage

\section{Quelques commandes liĂŠes Ă&nbsp; pgfplots}

\subsection{Introduction}

Pour des graphiques avec des fenĂŞtres d'affichage \textit{particuliĂ¨res}, il est fort possible que les commandes \textit{classiques} de \MontreCode{tkz-grapheur} coincent, avec notamment des \MontreCode{dimension tool large}$\ldots$

\smallskip

Dans ce cas, il est possible d'utiliser plutĂ´t l'environnement \MontreCode{axis} de \MontreCode{pgfplots} qui est plus palier ce problĂ¨me \textit{interne}$\ldots$

\MontreCode{tkz-grapheur} ne fournit pas d'environnement dĂŠdiĂŠ pour la crĂŠation de la fenĂŞtre, mais quelques commandes spĂŠcifiques ont ĂŠtĂŠ intĂŠgrĂŠes pour certains points, avec un fonctionnement assez semblable (donc se rĂŠfĂŠrer aux paragraphes prĂŠcĂŠdents) Ă&nbsp; celui des commandes \textit{classiques}.

\subsection{Macros spĂŠcifique pgfplots/axis}

\begin{tcblisting}{listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5,listing only}
%dĂŠterminer l'intersection de deux objets prĂŠalablement dĂŠfinis via [name path]
\findintersectionspgf[base nom nĹuds]{objet1}{objet2}[macro nb total]

%extraction (globale, non limitĂŠe Ă&nbsp; l'environnement) et stockage de coordonnĂŠes
\gextractxnodepgf{nĹud}[\myxcoord]
\gextractynodepgf{nĹud}[\myycoord]
\gextractxynodepgf{nĹud}[\myxcoord][\myycoord]

%domaine entre courbes
\fillbetweencurvespgf[options tikz]{courbe1}{courbe2}&lt;options soft domain&gt;

%splines cubiques
\addplotspline(*)[options tikz]&lt;coeffs&gt;{liste des points support}[\monspline]
\end{tcblisting}

\subsection{Exemple illustrĂŠ}

\begin{tcblisting}{listing only,listing engine=minted,minted language=latex,colframe=lightgray,colback=lightgray!5}
%\usepackage{alphalph}

\begin{tikzpicture}
	\begin{axis}%
		[%
		axis y line=center,axis x line=middle,                                   %axes
		axis line style={line width=0.8pt,-latex},
		x=0.33cm,y=0.55cm,xmin=1985,xmax=2030,ymin=56,ymax=70,                   %unitĂŠs
		grid=both,xtick distance=5,ytick distance=2,                             %grillep
		minor x tick num=4,minor y tick num=1,                                   %grilles
		extra x ticks={1985},extra x tick style={grid=none},                     %origx
		extra y ticks={56},extra y tick style={grid=none},                       %origy
		x tick label style={/pgf/number format/.cd,use comma,1000 sep={}},       %annĂŠe
		major tick length={2*3pt},minor tick length={1.5*3pt},                   %grads
		every tick/.style={line width=0.8pt},enlargelimits=false,                %style
		enlarge x limits={abs=2.5mm,upper},enlarge y limits={abs=2.5mm,upper},   %ĂŠlargir
		]
		%spline + y=66
		\addplot[name path global=eqtest,mark=none,red,line width=1.05pt,domain=1985:2030] {66} ;
		\def\LISTETEST{1985/60/0Â§1995/68/0Â§2015/58/0Â§2025/69/0Â§2030/62/-2}
		\addplotspline*[line width=1.05pt,violet,name path global=splinecubtest]{\LISTETEST}[\monsplineviolet]
		%recherche d'antĂŠcĂŠdents
		\findintersectionspgf[MonItsc]{eqtest}{splinecubtest}
		%extraction des coordonnĂŠes
		\gextractxnodepgf{(MonItsc-1)}[\xMonItscA]
		\gextractxnodepgf{(MonItsc-2)}[\xMonItscB]
		\gextractxnodepgf{(MonItsc-3)}[\xMonItscC]
		\gextractxnodepgf{(MonItsc-4)}[\xMonItscD]
		%visualisation
		\xintFor* #1 in {\xintSeq{1}{4}}\do{%
			\draw[line width=0.9pt,densely dashed,olive,-&gt;,&gt;=latex] (MonItsc-#1) -- (\csname xMonItsc\AlphAlph{#1}\endcsname,56) ;
			\filldraw[olive] (MonItsc-#1) circle[radius=1.75pt] ;
		}
		%intĂŠgrale
		\path [name path=xaxis] (1985,56) -- (2030,56);
		\fillbetweencurvespgf{splinecubtest}{xaxis}&lt;domain={\xMonItscB:\xMonItscA}&gt;
		\fillbetweencurvespgf{splinecubtest}{xaxis}&lt;domain={\xMonItscD:\xMonItscC}&gt;
	\end{axis}
\end{tikzpicture}

Les solutions de $f(x)=66$ sont d'environ \ArrondirNum*[0]{\xMonItscA} \&amp;\ \ArrondirNum*[0]{\xMonItscB} \&amp;\ \ArrondirNum*[0]{\xMonItscC} \&amp;\ \ArrondirNum*[0]{\xMonItscD}.
\end{tcblisting}

\begin{tikzpicture}
	\begin{axis}%
		[%
		axis y line=center,axis x line=middle,                                   %axes
		axis line style={line width=0.8pt,-latex},
		x=0.33cm,y=0.55cm,xmin=1985,xmax=2030,ymin=56,ymax=70,                   %unitĂŠs
		grid=both,xtick distance=5,ytick distance=2,                             %grillep
		minor x tick num=4,minor y tick num=1,                                   %grilles
		extra x ticks={1985},extra x tick style={grid=none},                     %originex
		extra y ticks={56},extra y tick style={grid=none},                       %originey
		x tick label style={/pgf/number format/.cd,use comma,1000 sep={}},       %annĂŠe
		major tick length={2*3pt},minor tick length={1.5*3pt},                   %grads
		every tick/.style={line width=0.8pt},enlargelimits=false,                %style
		enlarge x limits={abs=2.5mm,upper},enlarge y limits={abs=2.5mm,upper},   %ĂŠlargir
		]
		%spline + y=66
		\addplot[name path global=eqtest,mark=none,red,line width=1.05pt,domain=1985:2030] {66} ;
		\def\LISTETEST{1985/60/0Â§1995/68/0Â§2015/58/0Â§2025/69/0Â§2030/62/-2}
		\addplotspline*[line width=1.05pt,violet,name path global=splinecubtest]{\LISTETEST}[\monsplineviolet]
		%recherche d'antĂŠcĂŠdents
		\findintersectionspgf[MonItsc]{eqtest}{splinecubtest}
		%extraction des coordonnĂŠes
		\gextractxnodepgf{(MonItsc-1)}[\xMonItscA]
		\gextractxnodepgf{(MonItsc-2)}[\xMonItscB]
		\gextractxnodepgf{(MonItsc-3)}[\xMonItscC]
		\gextractxnodepgf{(MonItsc-4)}[\xMonItscD]
		%visualisation
		\xintFor* #1 in {\xintSeq{1}{4}}\do{%
			\draw[line width=0.9pt,densely dashed,olive,-&gt;,&gt;=latex] (MonItsc-#1) -- (\csname xMonItsc\AlphAlph{#1}\endcsname,56) ;
			\filldraw[olive] (MonItsc-#1) circle[radius=1.75pt] ;
		}
		%intĂŠgrale
		\path [name path=xaxis] (1985,56) -- (2030,56);
		\fillbetweencurvespgf{splinecubtest}{xaxis}&lt;domain={\xMonItscB:\xMonItscA}&gt;
		\fillbetweencurvespgf{splinecubtest}{xaxis}&lt;domain={\xMonItscD:\xMonItscC}&gt;
	\end{axis}
\end{tikzpicture}

Les solutions de $f(x)=66$ sont d'environ \ArrondirNum*[0]{\xMonItscA} \&amp;\ \ArrondirNum*[0]{\xMonItscB} \&amp;\ \ArrondirNum*[0]{\xMonItscC} \&amp;\ \ArrondirNum*[0]{\xMonItscD}.

\pagebreak

\section{Historique}

{\footnotesize \begin{quote}
\begin{verbatim}
0.2.0 : MĂŠthode alternative des splines cubiques + commandes auxiliaires pgfplots
0.1.9 : Correction d'un bug avec la dĂŠtermination d'unitĂŠs
0.1.8 : Courbes ECC/FCC + Toile rĂŠcurrence + Points discontinuitĂŠ + HistoBinom
0.1.7 : MĂŠthodes intĂŠgrales avec des splines
0.1.6 : Asymptote verticale + MĂŠthodes intĂŠgrales (gĂŠom + Monte Carlo)
0.1.5 : Correction d'un bug sur les rajouts de valeurs + NĹud pour une image + [en] version !
0.1.4 : Placement de texte
0.1.3 : Ajout de rĂŠgressions avec le package xint-regression
0.1.2 : Droites + Extremums
0.1.1 : DensitĂŠ loi normale et khi deux + Marquage points + AmĂŠliorations
0.1.0 : Version initiale
\end{verbatim}
\end{quote}}

\end{document}</pre></body></html>