summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-04-12 21:33:18 +0000
committerKarl Berry <karl@freefriends.org>2020-04-12 21:33:18 +0000
commit81491df570eb67c63542d5033a609bf453ed6e22 (patch)
tree71d747ce98db7c12c482309e3c43805064502153 /Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex
parent459ff31e0bc16b6adf838e7f1e69050496341559 (diff)
tkz-fct (12apr20)
git-svn-id: svn://tug.org/texlive/trunk@54703 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex')
-rw-r--r--Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex174
1 files changed, 174 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex b/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex
new file mode 100644
index 00000000000..f65fad96506
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/tkz-fct/TKZdoc-fct-fonctions.tex
@@ -0,0 +1,174 @@
+%!TEX root = /Users/ego/Boulot/TKZ/tkz-fct/doc-fr/TKZdoc-fct-main.tex
+\section{Les différentes macros}
+
+\tkzname{Gnuplot} détermine les points nécessaires pour tracer la courbe. Le nombre de points est fixé par l'option \tkzname{samples}; dans les premiers exemples la valeur du nombre de points est celle donnée par défaut. Ensuite Tikz va utiliser cette table pour tracer la courbe. C'est donc \tkzname{Tikz} qui trace la courbe.
+
+\subsection{Tracé d'une fonction avec gnuplot \tkzcname{tkzFct}}
+Cette première macro est la plus importante car elle permet de tracer la représentation graphique d'une fonction continue .\hypertarget{tfct}{}
+
+\begin{NewMacroBox}{tkzFct}{\oarg{local options}\var{gnuplot expression}}
+\emph{La fonction est donnée en utilisant la syntaxe de gnuplot. x est la variable sauf si \tkzname{xstep} est différent de 1, dans ce cas la variable est \tkzcname{x}.}
+
+\medskip
+\begin{tabular}{lll}
+\toprule
+ options & exemple & explication \\
+\midrule
+\TAline{gnuplot expression}{x**3}{** représente la puissance $\wedge$}
+\bottomrule
+\end{tabular}
+
+\emph{L'expression est de la forme 2*x+1 ; 3*log(x) ; x*exp(x) ; x*x*x+x*x+x. }
+
+Les options sont celles de \TIKZ.
+
+\begin{tabular}{lll}
+\toprule
+options & défaut & définition \\
+\midrule
+\TOline{domain}{xmin:xmax}{domaine de la fonction}
+\TOline{samples}{200}{nombre de points utilisés}
+\TOline{id} {tkzfct}{permet d'identifier les noms des fichiers auxiliaires}
+\TOline{color}{black}{couleur de la ligne}
+\TOline{line width} {1pt}{épaisseur de la ligne}
+\TOline{style} {solid}{style de la ligne}
+\end{tabular}
+\end{NewMacroBox}
+
+\tkzBomb Lorsque \tkzname{xstep} est différent de $1$, il est nécessaire de remplacer $x$ par |\x|.
+\tkzHand Il faut bien évidemment avoir initialisé l'environnement à l'aide \tkzcname{tkzInit} avant d'appeler \tkzcname{tkzFct}.
+\tkzBomb Attention à ne pas mettre d'espace entre les arguments.
+%<--------------------------------------------------------------------------->
+\subsection{option : \tkzname{samples}}
+
+Il faut remarquer que pour tracer une droite seulement deux points sont nécessaires, ainsi le code~:
+
+\begin{tkzltxexample}[]
+\tkzFct[{-(},color=red,samples=2,domain =-1:2]{(8-1.5*\x)/2}
+\end{tkzltxexample}
+
+
+donne un fichier xxx.table qui contient ~:
+
+\begin{tkzltxexample}[]
+# Curve 0 of 1, 2 points
+# Curve title: "(8-1.5*x)/2"
+# x y type
+-1.00000 4.75000 i
+2.00000 2.50000 i
+\end{tkzltxexample}
+
+Ce qui est simplement suffisant. Plus simple est dans ce cas, de tracer un segment.
+
+On demande 400 valeurs pour la table qui va permettre le tracé. Par défaut, la valeur choisie est 200.
+
+\medskip
+\begin{tkzexample}[latex=7cm]
+\begin{tikzpicture}[scale=1]
+ \tkzInit[xmax=5,ymax=2]
+ \tkzGrid[sub]
+ \tkzAxeXY
+ \tkzFct[samples=400,domain=.5:5]{1/x}
+\end{tikzpicture}
+\end{tkzexample}
+
+%<--------------------------------------------------------------------------->
+\subsection{options : \tkzname{xstep, ystep}}
+
+
+\begin{tkzexample}[]
+\begin{tikzpicture}
+\tkzInit[xmax= 110,xstep=10,
+ ymax=6,ystep=1]
+\tkzDrawX[label={\textit{Age}},below= -18pt]
+\tkzLabelX
+\tkzDrawY[label={\textit{litres}}]
+\tkzFct[domain = 0.1:100 ]{50/\x}
+\end{tikzpicture}
+\end{tkzexample}
+
+
+\subsection{Modification de \tkzname{xstep} et \tkzname{ystep}}
+
+Cette fois le domaine s'étend de 0 à 800, les valeurs prises par la fonction de $0$ à $\numprint{2000}$. \tkzname{xstep=100} donc il faut utiliser |\x| à la place de $x$. Une petite astuce au niveau de gnuplot, 1. et 113. permettent d'obtenir une division dans les décimaux sinon la division se fait dans les entiers.
+
+Ensuite, j'utilise les macros pour placer des points
+%<--------------------------------------------------------------------------->
+\begin{tkzexample}[vbox]
+\begin{tikzpicture}[scale=1.5]
+ \tkzInit[xmax=700,xstep=100,ymax=1200,ystep=400]
+ \tkzGrid(0,0)(700,1200) \tkzAxeXY
+ \tkzFct[color=red,samples=100,line width=0.8pt,domain =0:700]%
+ {(1./90000)*\x*\x*\x-(1./100)*\x*\x+(113./36)*\x}
+\end{tikzpicture}
+\end{tkzexample}
+
+\subsection{\tkzname{ystep} et les fonctions constantes}
+
+Attention, ici \tkzname{ystep=6} or \tkzname{gnuplot} donne $80\div=13$. il faut donc écrire $80.$
+
+% \begin{tkzexample}[vbox]
+% \begin{tikzpicture}[scale=0.4]
+% \tkzInit[xmax=30,ymax=90,ystep=6]
+% \tkzAxeX[nograd,noticks,poslabel=right,label=$t$]
+% \tkzAxeY[nograd,noticks,poslabel=above,label=$P$]
+% \tkzFct[line width=1pt,color=red,dashed,domain=0:30]{80.0}
+% \tkzFct[line width=1pt,color=blue,domain=0:30]{80/(1.0+4.0*exp(-0.21*x))}
+% \tkzText[above,color=red](20,80){$P=80$}
+% \end{tikzpicture}
+% \end{tkzexample}
+
+\subsection{Les fonctions affines ou linéaires}
+Pour obtenir des droites, on peut utiliser \tkzname{gnuplot} même si l'outil est un peu lourd dans ce cas. Pour alléger les calculs, il est possible de ne demander que deux points !
+
+\begin{tkzexample}[vbox]
+ \begin{tikzpicture}[]
+ \tkzInit[ymax=20,ystep=5]
+ \tkzAxeXY
+ \tkzFct[color=red,domain=0:10,samples=2]{2*x+5}
+ \tkzFct[color=blue,domain=0:10,samples=2]{-x+15}
+ \tkzFct[color=green,domain=0:10,samples=2]{7} % 7/5=1
+ \tkzFct[color=purple,domain=0:10,samples=2]{7.}%7.0/5 =1.2
+\end{tikzpicture}
+\end{tkzexample}
+ %<--------------------------------------------------------------------------->
+\subsection{Sous-grille}
+
+ $y=(x-4)\text{e}^{-0.25x+5}$
+
+Il est possible de dessiner une autre grille.
+
+\begin{tkzexample}[latex=8cm]
+\begin{tikzpicture}
+ \tkzInit[xmin=4,xmax=18,xstep=2,
+ ymin=20,ymax=90,ystep=10]
+ \tkzFct[domain = 5:18]%
+ {(\x-4)*exp(-0.25*\x+5)}
+ \tkzGrid(4,20)(18,90)
+ \tkzAxeXY
+ \tkzGrid[sub,
+ subxstep=0.5,
+ subystep=2,
+ color=brown](6,60)(12,90)
+\end{tikzpicture}
+\end{tkzexample}
+%<--------------------------------------------------------------------------->
+\subsection{Utilisation des macros de \tkzname{tkz-base}}
+Toutes les macros de \tkzname{tkz-base} sont bien sûr utilisables, en voici quelques exemples.
+
+\begin{center}
+ \begin{tkzexample}[vbox]
+ \begin{tikzpicture}[scale=2]
+ \tkzInit[xmin=-3,xmax=3, ymin=-1,ymax=3]
+ \tkzGrid[sub,subxstep=.5,subystep=.5]
+ \tkzAxeXY
+ \tkzFct[domain = -3:2]{(2-x)*exp(x)}
+ \tkzText(-2,1.25){$\mathcal{C}_{f}$}
+ \tkzDefPoint(2,0){A} \tkzDrawPoint(A) \tkzLabelPoints(A)
+ \end{tikzpicture}
+ \end{tkzexample}
+\end{center}
+
+
+%<--------------------------------------------------------------------------->
+\endinput