diff options
Diffstat (limited to 'macros/latex/contrib/tkz/tkz-fct/doc/latex/TKZdoc-fct-compilation.tex')
-rw-r--r-- | macros/latex/contrib/tkz/tkz-fct/doc/latex/TKZdoc-fct-compilation.tex | 243 |
1 files changed, 0 insertions, 243 deletions
diff --git a/macros/latex/contrib/tkz/tkz-fct/doc/latex/TKZdoc-fct-compilation.tex b/macros/latex/contrib/tkz/tkz-fct/doc/latex/TKZdoc-fct-compilation.tex deleted file mode 100644 index 1bfa45df41..0000000000 --- a/macros/latex/contrib/tkz/tkz-fct/doc/latex/TKZdoc-fct-compilation.tex +++ /dev/null @@ -1,243 +0,0 @@ -\section{Utilisation de Gnuplot} -%–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––> -\subsection{Mécanisme d'interaction entre \TIKZ\ et \tkzname{Gnuplot}} - -\TEX\ est un système logiciel de composition de documents ( text processing programm ). Il permet bien sûr de calculer, mais avec des moyens limités. \TIKZ\ est ainsi limité par \TEX\ pour effectuer des calculs. Pour rappel ±16383.99999 pt est l'intervalle dans lequel \TEX\ stocke ses valeurs. Sachant que 1 cm est égal à 28.45274 pt, on s'aperçoit que \TEX\ ne peut traiter que des dimensions inférieures à 5,75 mètres environ. -Bien sûr, cela paraît suffisant, mais malheureusement, pendant un enchaînement de calculs, il est assez facile de dépasser ces limites. - -\bigskip - \newcommand{\drawpage}[4]{% - \begin{scope}[xshift=#1, yshift=#2,font=\footnotesize] - \filldraw[fill=white!75!#4,draw=#4, very thin]% - (0,0) -- (4.2,0) -- (4.2,4.85) --(3.21,5.84)-- (0,5.84) -- cycle; - \fill[fill=#4,shade,top color=#4,bottom color=#4!40]% - (3.21,5.84) -- ++(0,-0.99) -- ++(0.99,0) -- cycle; - \path (2.1,2.97) node{#3}; - \end{scope} -} - -\begin{center} -\begin{tikzpicture}[>=triangle 45,scale=.75] -\drawpage{0cm}{0cm}{\texttt\tkzblue\begin{minipage}{2cm} -sample.tex - -with - -\tkzcname{draw plot[id=fct] function{---.};} -\end{minipage}}{blue} -\drawpage{12cm}{0cm}{\texttt \tkzred sample.fct.gnuplot}{red} -\drawpage{12cm}{-14cm}{\texttt\tkzred sample.fct.table}{red} -\drawpage{0cm}{-14cm}{\texttt\tkzblue\begin{minipage}{2cm} -sample.pdf - -\bigskip - \begin{tikzpicture}[domain=-1.5:.8] - \draw plot[id=f1,samples=200] function{x*x}; - \end{tikzpicture} -\end{minipage}}{blue} - -\path (8.05,2.9) node(A) - [diamond,% - draw,color = black, - fill = red!60,% - text = black,% - minimum size = 3 cm,% - font = \normalsize] - {{\texttt \tikzname-\TEX}}; - \path (14.1,-4.08) node(B) - [diamond,% - draw,color=black,fill=green!60,% - text = black,% - minimum size = 3 cm,% - font = \normalsize] - {{\texttt gnuplot}}; - \path (8.05,-11.1) node(C) - [diamond,% - draw,color = black, - fill = red!60,% - text = black,% - minimum size = 3 cm,% - font = \normalsize] - {{\texttt \tikzname-\TEX}}; - \draw[->] (4.2,2.9) -- (A.west); - \draw[->] (A.east) -- (12,2.9); - \draw[->] (14.1,0) -- (B.north); - \draw[->] (B.south) -- (14.1,-8.18); - \draw[->] (12 ,-11.1)--(C.east); - \draw[->] (C.west)--(4.2,-11.1); - \draw[->,magenta] (4.2,2.9) to [ out =-80,in=260] node[below,pos=.5]{étape 1} (12,2.9); - \draw[->,magenta] (14.1,0) to [ out =200,in=160] node[left,pos=.5]{étape 2} (14.1,-8.18); - \draw[->,magenta] (12 ,-11.1) to [ out =110,in=70] node[above,pos=.5]{étape 3} (4.2,-11.1); - \end{tikzpicture} -\end{center} - -Pour tracer des courbes en 2D en contournant ces problèmes, un moyen simple offert par \TIKZ, est d'utiliser \tkzname{gnuplot}. - - \tkzname{tkz-fct.sty} s'appuie sur le programme \tkzname{gnuplot} et le package \tkzname{fp.sty}. Le premier est utilisé pour obtenir une liste de points, et le second pour évaluer ponctuellement des valeurs. - - Vous devez donc installer \tkzname{Gnuplot}, son installation dépend de votre système, puis il faudra que votre distribution trouve \tkzname{Gnuplot}, et que \TeX\ autorise \tkzname{Gnuplot} à écrire un fichier. - -\begin{itemize} -\item \textcolor{red}{\textbf{Étape 1}} - -On part du fichier \tkzname{sample.tex} suivant : - -\medskip -\begin{tkzltxexample}[] -\documentclass{article} -\usepackage{tikz} -\begin{document} -\begin{tikzpicture} -\draw plot[id=f1,samples=200,domain=-2:2] function{x*x}; -\end{tikzpicture} -\end{document} -\end{tkzltxexample} - -La compilation de ce fichier créé avec \TIKZ, produit un fichier nommé \tkzname{sample.f1.gnuplot}. Le nom du fichier est obtenu à partir de \tkzcname{jobname} et de l'option \tkzname{id}. Ainsi un même fichier peut créer plusieurs fichiers distincts. C'est un fichier texte ordinaire, affecté de l'extension \tkzname{gnuplot}. Il contient un préambule indiquant à \tkzname{gnuplot} qu'il doit créer une table contenant les coordonnées d'un certain nombre de points obtenu par la fonction définie par $x\longrightarrow x^2$. Ce nombre de points est défini par l'option \tkzname{samples}. Cette étape ne présente aucune difficulté particulière. Le fichier obtenu peut être traité manuellement avec \tkzname{gnuplot}. Le résultat est le fichier suivant : - -\begin{tkzltxexample}[] -set table; set output "sample.f1.table"; set format "%.5f" -set samples 200; plot [x=-2:2] x*x -\end{tkzltxexample} - -Une table sera créée et enregistrée dans un fichier texte nommé "sample.f1.table". Les nombres seront formatés pour ne contenir que 5 décimales. -La table contiendra 201 couples de coordonnées. - -\item \textcolor{red}{\textbf{Étape 2}} - -Elle est la plus délicate car le fichier \tkzname{sample.f1.gnuplot} doit être ouvert par \tkzname{gnuplot}. Cela implique d'une part, que \TEX\ autorise l'ouverture\footnote{c'est ici que l'on parle des options \tkzname{--shell-escape} et \tkzname{--enable-write18}} - du fichier \tkzname{sample.f1.gnuplot} par \tkzname{gnuplot} et d'autre part, que \TEX\ puisse trouver \tkzname{gnuplot}\footnote{c'est ici que l'on parle de \tkzname{PATH}}. - -Si \tkzname{gnuplot} trouve \tkzname{sample.f1.gnuplot} alors il produit un fichier texte \tkzname{sample.f1.table}, évidemment s'il ne trouve d'erreur de syntaxe dans l'expression de la fonction. - -\tkzHandBomb Malheureusement, une incompréhension peut surgir entre \TIKZ\ et \tkzname{gnuplot}. \TIKZ\ jusqu'à sa version 2.00 officielle, est conçu pour fonctionner avec \tkzname{gnuplot} version 4.0 et malheureusement, \tkzname{gnuplot} a changé de syntaxe. la documentation de gnuplot indique : - -\medskip\hspace{1cm} -\begin{tkzltxexample}[] - Features, changes and fixes in gnuplot version 4.2 (and >) -'set table "outfile"; ---.; unset table' replaces 'set term table' -\end{tkzltxexample} - - -La version 2.1 de \TIKZ\ a adopté \tkzname{set table} et il n'y a plus d'incompatibilité entre \TIKZ\ et les versions récentes de \tkzname{gnuplot} (v>4.2). J'espère qu'il en va de même pour les versions de \TIKZ\ > 3. - - \item \textcolor{red}{\textbf{Étape 3}} - - Le fichier \tkzname{sample.f1.table} obtenu à l'étape précédente est utilisé par \TIKZ\ pour tracer la courbe. - -\medskip\hspace{1cm} -\begin{tkzltxexample}[] -# Curve 0 of 1, 201 points -# Curve title: "x*x" -# x y type --2.00000 4.00000 i --1.98000 3.92040 i --1.96000 3.84160 i ----. -1.98000 3.92040 i -2.00000 4.00000 i -\end{tkzltxexample} -\end{itemize} - -\begin{enumerate} - -\item Il faut remarquer qu'au cours d'une seconde compilation, si le fichier \tkzname{sample.f1.gnuplot} ne change pas, alors \tkzname{gnuplot} n'est pas lancé et le fichier présent \tkzname{sample.f1.table} est utilisé. - -\item On peut aussi remarquer que si vous êtes paranoïaque et que vous n'autorisez pas le lancement de gnuplot, alors un première compilation permettra de créer le fichier \tkzname{sample.f1.table}, ensuite manuellement, vous pourrez lancer gnuplot et obtenir le fichier \tkzname{sample.f1.table}. - -\item Il est aussi possible de créer manuellement ou encore avec un quelconque programme, un fichier data.table que \TIKZ\ pourra lire avec - -\begin{tkzltxexample}[] - \draw plot[smooth] file {data.table}; -\end{tkzltxexample} -\end{enumerate} - - - -\subsection{Installation de \tkzname{Gnuplot}} - -Gnuplot est proposé avec la plupart des distributions Linux, et existe pour OS X ainsi que pour Windows. - -\begin{enumerate} - \item \NameSys{Linux Ubuntu} ou un autre système Linux: on l'installe en suivant la procédure classique d'installation d'un nouveau paquetage. - \item \NameSys{Windows XP} Les utilisateurs de Windows doivent se méfier, après avoir téléchargé la bonne version et installé \tkzname{gnuplot} alors il faudra renommé wgnuplot en gnuplot. Ensuite il faudra modifier le \tkzname{path}. Si le chemin du programme est \tkzname{C:\textbackslash gnuplot} alors il faudra ajouter \tkzname{{C:}\textbackslash gnuplot\textbackslash bin\textbackslash} aux variables environnement (Aller à "Poste de Travail" puis faire "propriétés", dans l'onglet "Avancé", cliquer sur "Variables d'environnement". ). -Ensuite pour compiler sous latex, il faudra ajouter au script de compilation l'option \tkzname{--enable-write18 }. - \item \NameSys{OS X} L'installation n'est jamais simple sauf - si vous n'utilisez \tkzname{gnuplot} qu'en collaboration avec \TIKZ\ alors il vous suffit de compiler les sources ainsi : - - \begin{enumerate} - -\item Télécharger les sources de \tkzname{gnuplot}, déposer les sources sur le bureau. -\item Ouvrir un terminal puis taper cd et glisser le dossier des sources après cd (en laissant un espace) -Cela doit donner - -\begin{tkzltxexample}[] -$ cd /Users/you/Desktop/gnuplot-4.4.2 -\end{tkzltxexample} - -\item ensuite taper la ligne suivante et valider - \begin{tkzltxexample}[] -$ ./configure --with-readline=builtin -\end{tkzltxexample} - \item puis -\begin{tkzltxexample}[] -$ make\end{tkzltxexample} - \item et enfin - \begin{tkzltxexample}[] -$ sudo make install -\end{tkzltxexample} - \end{enumerate} -\end{enumerate} - - -\subsection{ Test de l'installation de tkz-base} -Enregister le code suivant dans un fichier avec le nom test.tex, puis compiler avec pdflatex ou bien la chaîne dvi-->ps-->pdf. Vous devez obtenir cela : - - -\begin{tkzltxexample}[] -\documentclass{standalone} - \usepackage{tkz-fct} - \begin{document} - \begin{tikzpicture} - \tkzInit[xmin=-5,xmax=5,ymax=2] - \tkzGrid - \tkzAxeXY - \end{tikzpicture} - \end{document} -\end{tkzltxexample} - -\begin{tkzexample}[latex=9cm] - \begin{tikzpicture} - \tkzInit[xmin=-3,xmax=3,ymax=2] - \tkzGrid - \tkzAxeXY - \end{tikzpicture} -\end{tkzexample} - - -\subsection{ Test de l'installation de tkz-fct} -Il suffit d'ajouter une ligne pour tracer la représentation graphique d'une fonction. - -\begin{tkzltxexample}[] -\documentclass{standalone} - \usepackage{tkz-fct} - \begin{document} - \begin{tikzpicture}[scale=1.25] - \tkzInit[xmin=-5,xmax=5,ymax=2] - \tkzGrid - \tkzAxeXY - \tkzFct[color=red]{2*x**2/(x**2+1)} - \end{tikzpicture} - \end{document} -\end{tkzltxexample} - -\begin{tkzexample}[] -\begin{tikzpicture}[scale=1.25] - \tkzInit[xmin=-5,xmax=5,ymax=2] - \tkzGrid - \tkzAxeXY - \tkzFct[color=red]{2*x**2/(x**2+1)} - \end{tikzpicture} -\end{tkzexample} -\endinput - |