Comment tracer un tableau de variations?

Le tableau de variation d'une fonction mathématique représente de façon semi-graphique les intervalles sur lesquels elle est croissante, décroissante… (voir les exemples plus bas)

Plusieurs packages fournissent des syntaxes pour composer facilement ces tableaux de variations. Il se trouve que tous ont été écrits par des francophones (cette représentation du comportement d'une fonction serait-elle une spécificité de l'enseignement français des mathématiques?).

Avec l'extension “tkz-tab”

$\Reponse$ La méthode actuellement conseillée utilise le package tkz-tab, écrit par Alain Matthes et basé sur TikZ, pour composer tableaux de signes et tableaux de variations. La richesse de sa syntaxe permet toutes les fantaisies (utilisation de la couleur, par exemple) et sa documentation, très complète, est écrite en français.

  \usepackage{tkz-tab}
 
\begin{tikzpicture}
\tikzset{h style/.style = {pattern=north west lines}}
\tkzTabInit[lgt=1,espcl=2]{$x$ /1,  $f$ /2}{$0$,$1$,$2$,$3$}%
\tkzTabVar{+/ $1$  / , -CH/ $-2$ / , +C/  $5$, -/ $0$  /  }
\end{tikzpicture}

\documentclass{article}
  \usepackage{tkz-tab}
  \pagestyle{empty}

\begin{document}
\begin{tikzpicture}
\tikzset{h style/.style = {pattern=north west lines}}
\tkzTabInit[lgt=1,espcl=2]{$x$ /1,  $f$ /2}{$0$,$1$,$2$,$3$}%
\tkzTabVar{+/ $1$  / , -CH/ $-2$ / , +C/  $5$, -/ $0$  /  }
\end{tikzpicture}
\end{document}

Avec l'extension “variations”

$\Reponse$ L'extension variations, de Christian Obrecht, permet de composer des tableaux de variations de fonctions et des tableaux de signes respectant les usages typographiques français. La syntaxe utilisée est proche de celle de l’environnement tabular. Les macros fournies permettent de répondre aux besoins les plus courants.

Sa documentation est en français.

FIXME Ajouter des exemples.

Avec l'extension “tablvar”

$\Reponse$ L'extension tablvar, d'Antoine Missier, permet de construire des tableaux de variation (et de signes) de manière simple et intuitive. Elle vise une certaine automatisation, y compris pour des tableaux complexes, mais avec de nombreuses possibilité de réglages et d’ajustements personnels et une haute qualité graphique, en particulier pour le dessin des flèches, en exploitant les fonctionnalités des extensions graphiques PSTricks ou TikZ.

Le parti pris est d’utiliser la même syntaxe que les environnements array (ou tabular) en laissant à LaTeX le soin de faire la composition du tableau, et à l’extension graphique (PSTricks ou TikZ) celui de réaliser le dessin des flèches, automatisé et sans intervention de l’utilisateur. On a simplement besoin de préciser, à l’intérieur d’une commande \variations, ce qui est en haut et ce qui est en bas.

Sa documentation est écrite en français.

On peut charger cette extension de deux façons:

De façon à utiliser PSTricks pour le dessin de flèches:

\usepackage{tablvar}  % option par défaut

Il faut compiler le document avec LaTeX + dvips + ps2pdf.


Ou avec TikZ:

\usepackage[tikz]{tablvar}

Et là, il faut compiler deux fois le document avec pdfLaTeX ou LuaLaTeX (la première fois les flèches ne sont pas correctement placées).

Si on veut compiler avec l’option pstricks après avoir compilé avec TikZ, il faut supprimer manuellement le fichier .aux, sinon la compilation échouera.

FIXME Ajouter des exemples.

Avec l'extension “tabvar”

$\Reponse$ L’extension tabvar, de Daniel Flipo, a pour but de faciliter la saisie des tableaux de variations. Elle fonctionne aussi bien avec pdfLaTeX qu’avec LuaLaTeX ou XeLaTeX. Elle s’appuie sur les extensions array, colortbl et varwidth. Les flèches sont prises dans une fonte (type 1) dédiée, fournie dans un fichier tabvar.pfb.

Sa documentation est écrite en français.

Historiquement, l'extension tabvar faisait appel à MetaPost pour le dessin des flèches. Ce fonctionnement est toujours disponible en option, mais l'auteur conseille de ne plus l'utiliser.

FIXME Ajouter des exemples.

Avec l'extension “tablor”

$\Reponse$ Le package tablor, de Guillaume Connan, s'appuie sur les macros MetaPost de tableauVariations (par Frédéric Mazoit) pour dessiner des tableaux de variation. Il est conçu pour s'interfacer avec le logiciel de calcul formel XCas.

Comme les packages précédents, sa documentation est en français.

Sans extension particulière

$\Reponse$ Pour un tableau simple, c'est également possible (et facile) avec l'environnement array du mode mathématique standard de \LaTeX{} comme ici:

$
\begin{array}{|c|ccccr|}
\hline
x     & -\infty &  & 0 & & +\infty \\ \hline
f'(x) & 5 & + & 0  & - & -10       \\ \hline
      &   &   & 10 &   &           \\ % ligne des valeurs "max"
f(x) &    &\nearrow & &\searrow  & \\ % flèches
     & -\infty &  &  & & -10       \\ % ligne des valeurs "min"
\hline
\end{array}
$


$
\begin{array}{|c|ccccr|}
\hline
x     & -\infty &  & 0 & & +\infty \\ \hline
f'(x) & 5 & + & 0  & - & -10       \\ \hline
      &   &   & 10 &   &           \\ % ligne des valeurs "max"
f(x) &    &\nearrow & &\searrow  & \\ % flèches
     & -\infty &  &  & & -10       \\ % ligne des valeurs "min"
\hline
\end{array}
$

Les flèches sont nommées d'après les points cardinaux: \nearrow est pour north-east, \searrow pour south-east:

Commande Résultat
\nearrow $\nearrow$
\searrow $\searrow$
\nwarrow $\nwarrow$
\swarrow $\swarrow$

On peut faire de plus jolies flèches (redimensonnables) avec les commandes graphiques, mais le code est moins lisible.

Pour cela, il faut choisir une unité de longueur avant par exemple \unitlength=1cm et remplacer par exemple nearrow par des flèches de 2cm de large et de haut, comme dans cet exemple:

\unitlength=1cm
$
\begin{array}{|c|ccccr|}
\hline
x     & -\infty &   &  0 &   & +\infty \\ \hline
f'(x) & 5       & + &  0 & - & -10     \\ \hline
      &         &   & 10 &   &         \\ % ligne des valeurs "max"
f(x)  & &
  \begin{minipage}{1cm}
  \begin{picture}(1,1)
    \put(0,0){\vector(1,1){1}}
  \end{picture}
  \end{minipage}
 & &
  \begin{minipage}{1cm}
  \begin{picture}(1,1)
     \put(0,1){\vector(1,-1){1}}
  \end{picture}
  \end{minipage}
& \\                                      % flèches
      & -\infty &   &   &   & -10 \\  % ligne des valeurs "min"
\hline
\end{array}
$


\unitlength=1cm
$
\begin{array}{|c|ccccr|}
\hline
x & -\infty & & 0 & & +\infty \\ \hline
f'(x) & 5 & + & 0 & - & -10 \\ \hline
 & & & 10 & & \\          % ligne des valeurs "max"
f(x) & &
  \begin{minipage}{1cm}
  \begin{picture}(1,1)
    \put(0,0){\vector(1,1){1}}
  \end{picture}
  \end{minipage}
 & &
  \begin{minipage}{1cm}
  \begin{picture}(1,1)
     \put(0,1){\vector(1,-1){1}}
  \end{picture}
  \end{minipage}
& \\                                      % flèches
& -\infty & & & & -10 \\  % ligne des valeurs "min"
\hline
\end{array}
$

Avec l'extension “tableaux”

$\Reponse$ Enfin, le package tableaux, également téléchargeable à l'adresse http://melusine.eu.org/syracuse/exemples/kisselhoff/, permet d'effectuer des mises en page plus complexes grâce à PStricks. Par exemple:

\documentclass{article}
  \usepackage{ifthen,minimum,tableau}
 
\newpsstyle{hachured}
           {fillstyle=hlines,
            hatchwidth=0.2pt,
            hatchsep=2pt}
 
\begin{document}
 
\setlength{\TabTitreL}{1cm}
\begin{MonTableau}{1}{9}{1.5}
\psframe[style=hachured,%
         linestyle=none](.3,1)(.45,0)
 
\TabNewCol{0}
\rTabPut{Br}{-.15}{.25}{$x$}
\rTabPut{Br}{-.15}{.40}{$f(x)$}
 
\TabNewCol{0}
\rTabPut{Bl}{.15}{.25}{$0$}
\rTabPut{Bl}{.15}{.60}{$\frac{3}{2}$}
 
\TabNewCol{.30}
\rTabPut{B}{0}{.25}{$1$}
\rTabPut{Br}{-.15}{.80}{$+\infty$}
\psline[style=TabDblBarre](.3,0)(.3,1)
 
\TabNewCol{.45}
\rTabPut{B}{0}{.25}{$\frac{3}{2}$}
\rTabPut[2]{B}{0}{.10}{\TabZ}
 
\TabNewCol{1}
\rTabPut{Br}{-.15}{.25}{$+\infty$}
\rTabPut{Br}{-.15}{.40}{$1$}
 
\TabFleche{B1}{C1}
\TabFleche{D1}{E1}
\end{MonTableau}
\end{document}

Source: Variations d'une fonction

4_domaines_specialises/mathematiques/structures/tracer_un_tableau_de_variations.txt · Dernière modification : 2023/02/27 21:54 de jejust
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0