From cd0b64f63a0e63d201a246370b73007bec5917a4 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 4 Sep 2022 20:50:03 +0000 Subject: proflycee (4sep22) git-svn-id: svn://tug.org/texlive/trunk@64289 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/latex/proflycee/ProfLycee-doc.pdf | Bin 802991 -> 816736 bytes .../doc/latex/proflycee/ProfLycee-doc.tex | 145 +++++++++++++++++++-- .../texmf-dist/tex/latex/proflycee/ProfLycee.sty | 89 ++++++++++++- 3 files changed, 223 insertions(+), 11 deletions(-) (limited to 'Master/texmf-dist') diff --git a/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf b/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf index e4fe0bca5a9..96ad5815239 100644 Binary files a/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf and b/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.pdf differ diff --git a/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex b/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex index fa2674ae2b4..761c36edafc 100644 --- a/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex +++ b/Master/texmf-dist/doc/latex/proflycee/ProfLycee-doc.tex @@ -1,4 +1,8 @@ -% !TeX TXS-program:compile = txs:///pythonpdfse +% !TeX TXS-program:compile = txs:///arara +% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} +% arara: pythontex: {rerun: modified} if found('pytxcode', 'PYTHONTEX#py') +% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('pytxcode', 'PYTHONTEX#py') +% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)') \documentclass{article} \usepackage[french]{babel} @@ -56,8 +60,8 @@ \setlength{\parindent}{0pt} \definecolor{LightGray}{gray}{0.9} -\def\PLversion{1.2.4} -\def\PLdate{2 Septembre 2022} +\def\PLversion{1.2.5} +\def\PLdate{3 Septembre 2022} \tcbset{vignettes/.style={% nobeforeafter,box align=base,boxsep=0pt,enhanced,sharp corners=all,rounded corners=southeast,% @@ -882,7 +886,7 @@ Pour \textit{illustrer} un peu les \Cle{clés}, un petit schéma, avec les diff \newpage -\section{Code Python \og simple \fg} +\section{Code Python \og simple \fg}\label{pythonsimple} \subsection{Introduction} @@ -2759,7 +2763,7 @@ Quelques \Cle{Clés} sont disponibles pour cette commande, essentiellement pour \newpage -\section{Statistiques à deux variables} +\section{Statistiques à deux variables}\label{statsdeuxvars} \subsection{Idées} @@ -3241,6 +3245,127 @@ L'idée principale est de récupérer les variables de la régression linéaire \newpage +\section{Boîtes à moustaches}\label{boiteamoustaches} + +\subsection{Introduction} + +\begin{codeidee} +L'idée est de proposer une commande, à intégrer dans un environnement \TikZ, pour tracer une boîte à moustaches grâce aux paramètres, saisis par l'utilisateur. + +\smallskip + +Le code ne calcule pas les paramètres, il ne fait \textit{que} tracer la boîte à moustaches ! +\end{codeidee} + +\begin{codetex}[] +\begin{tikzpicture} + \PLboitemoust[parametres={10/15/17/19/20}] +\end{tikzpicture} +\end{codetex} + +\begin{codeinfo} +Étant donnée que la commande est intégrée dans un environnement \TikZ, les unités peuvent/doivent donc être précisées, \textit{comme d'habitude}, si besoin. +\end{codeinfo} + +\subsection{Clés et options} + +\begin{codecles} +Quelques \Cle{clés} sont disponibles pour cette commande : + +\begin{itemize} + \item la clé \Cle{parametres} qui sont sous la forme \Cle{Min/Q1/Med/Q3/Max} ; + \item la clé \Cle{couleur} qui est la couleur de la boîte ; \hfill~défaut \Cle{black} + \item la clé \Cle{elevation} qui est la position verticale (ordonnée des moustaches) de la boîte ; \hfill~défaut \Cle{1.5} + \item la clé \Cle{hauteur} qui est la hauteur de la boîte ; \hfill~défaut \Cle{1} + \item la clé \Cle{moyenne} qui est la moyenne (optionnelle) de la série ; + \item la clé \Cle{epaisseur} qui est l'épaisseur des traits de la boîte ; \hfill~défaut \Cle{thick} + \item la clé \Cle{remplir} qui est la couleur de remplissage de la boîte ; \hfill~défaut \Cle{white} + \item le booléen \Cle{affmoyenne} qui permet d'afficher ou non la moyenne (sous forme d'un point) ; \hfill~défaut \Cle{false} + \item le booléen \Cle{pointilles} qui permet d'afficher des pointillés au niveau des paramètres ; \hfill~défaut \Cle{false} + \item le booléen \Cle{valeurs} qui permet d'afficher les valeurs des paramètres au niveau des abscisses.\hfill~défaut \Cle{false} +\end{itemize} +\end{codecles} + +\begin{codetex}[] +\begin{tikzpicture} + \PLboitemoust[epaisseur=very thick,parametres={10/15/17/19/20},moyenne=18.5,couleur=blue,affmoyenne,% + pointilles,valeurs,hauteur=2.25,elevation=2.75] +\end{tikzpicture} +\end{codetex} + +\begin{codetex}[listing only] +%une grille a été rajoutée pour visualiser la "position verticale" +\begin{center} + \begin{tikzpicture}[x=0.1cm] + \PLboitemoust[epaisseur=ultra thick,parametres={100/150/170/190/200},couleur=blue] + \PLboitemoust[epaisseur=thin,elevation=2.5,parametres={80/100/110/120/150},couleur=red] + \PLboitemoust[elevation=4,parametres={100/140/145/160/210},couleur=ForestGreen,remplir=ForestGreen!25] +\end{tikzpicture} +\end{center} +\end{codetex} + +\begin{codesortie} +\begin{center} + \begin{tikzpicture}[x=0.1cm] + \draw[xstep=10,ystep=0.5,very thin,lightgray] (80,0) grid (210,4.5) ; + \foreach \x in {80,90,...,210} \draw[very thin,lightgray] (\x,3pt)--(\x,-3pt) node[below] {\num{\x}} ; + \foreach \y in {0,0.5,...,4.5} \draw[very thin,lightgray] ($(210,\y)+(-3pt,0)$)--($(210,\y)+(3pt,0)$) node[right] {\num{\y}} ; + \PLboitemoust[epaisseur=ultra thick,parametres={100/150/170/190/200},couleur=blue] + \PLboitemoust[epaisseur=thin,elevation=2.5,parametres={80/100/110/120/150},couleur=red] + \PLboitemoust[elevation=4,parametres={100/140/145/160/210},couleur=ForestGreen,remplir=ForestGreen!25] + \end{tikzpicture} +\end{center} +\end{codesortie} + +\subsection{Commande pour placer un axe horizontal} + +\begin{codeidee} +L'idée est de proposer, en parallèle de la commande précédente, une commande pour tracer un axe horizontal \og sous \fg{} les éventuelles boîtes à moustaches. +\end{codeidee} + +\begin{codetex}[] +\begin{tikzpicture} + \PLboitemoustaxe[min=10,max=20] + \PLboitemoust[parametres={10/15/17/19/20}] +\end{tikzpicture} +\end{codetex} + +\begin{codetex}[] +\begin{tikzpicture} + \PLboitemoustaxe[min=10,max=20,] + \PLboitemoust[parametres={10/15/17/19/20},valeurs,pointilles] +\end{tikzpicture} +\end{codetex} + +\begin{codecles} +Quelques \Cle{clés} sont disponibles pour cette commande : + +\begin{itemize} + \item la clé \Cle{min} qui est la valeur minimale de l'axe horizontal ; + \item la clé \Cle{max} qui est la valeur minimale de l'axe horizontal ; + \item la clé \Cle{elargir} qui est le pourcentage l'élargissement de l'axe ;\hfill~défaut \Cle{0.1} + \item la clé \Cle{epaisseur} qui est l'épaisseur des traits de la boîte ; \hfill~défaut \Cle{thick} + \item la clé \Cle{valeurs} qui est la liste (compréhensible en \TikZ) des valeurs à afficher. +\end{itemize} +\end{codecles} + +\begin{codetex}[] +\begin{tikzpicture} + \PLboitemoustaxe[min=8,max=21,affvaleurs,valeurs={8,9,...,21},elargir=0.02] + \PLboitemoust[parametres={10/15/17/19/20},moyenne=18.5,couleur=blue] + \PLboitemoust[elevation=2.5,parametres={8/10/11/12/15},couleur=red] + \PLboitemoust[elevation=4,parametres={10/14/14.5/16/21},couleur=ForestGreen,remplir=ForestGreen!25] +\end{tikzpicture} +\end{codetex} + +\begin{codeinfo} +Le placement des différentes boîtes n'est pas automatique, donc il faut penser à cela avant de se lancer dans le code. + +Sachant que la hauteur par défaut est de 1, il est -- a priori -- intéressant de placer les boîtes à des \Cle{élévations} de \num{1} puis \num{2.5} puis \num{4} etc +\end{codeinfo} + +\newpage + \section{Conversions binaire/hexadécimal/décimal} \subsection{Idée} @@ -3514,7 +3639,7 @@ Les valeurs \Cle{mainlevee=5mm et 0.6pt} donnent des résultats -- à mon sens - \newpage -\section{PixelART via un fichier csv, en \TikZ} +\section{PixelART via un fichier csv, en \TikZ}\label{pixelart} \subsection{Introduction} @@ -3845,17 +3970,19 @@ D,-,-,D,-,D,D,F,F,F,F,F,F,D,D,-,-,-,-,D,-,- \section{Historique} +{\small \bverb|v1.2.5|~:~~~~Ajout de commandes pour des boîtes à moustaches (page \pageref{boiteamoustaches}) + {\small \bverb|v1.2.4|~:~~~~Correction de quelques bugs mineurs, et mise à jour de la doc -{\small \bverb|v1.2.3|~:~~~~Commandes pour du code python "simple", sans compilation particulière +{\small \bverb|v1.2.3|~:~~~~Commandes pour du code python "simple", sans compilation particulière (page \pageref{pythonsimple}) -{\small \bverb|v1.2.2|~:~~~~Commandes pour travailler sur des stats à 2 variables +{\small \bverb|v1.2.2|~:~~~~Commandes pour travailler sur des stats à 2 variables (page \pageref{statsdeuxvars}) {\small \bverb|v1.2.1|~:~~~~Amélioration de la gestion du csv pour Pixelart {\small \bverb|v1.2 |~:~~~~Correction d'un méchant bug sur Pixelart -{\small \bverb|v1.1.9|~:~~~~Pixelart en \TikZ +{\small \bverb|v1.1.9|~:~~~~Pixelart en \TikZ{} (page \pageref{pixelart}) {\small \bverb|v1.1.8|~:~~~~Style "Mainlevée" basique pour \TikZ diff --git a/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty b/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty index 96f82b590e6..56dda985a4f 100644 --- a/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty +++ b/Master/texmf-dist/tex/latex/proflycee/ProfLycee.sty @@ -3,8 +3,9 @@ % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{ProfLycee}[2022/09/02 v1.2.4 - Aide pour l'utilisation de LaTeX en lycee] -% 1.2.4 Correction de queqlues bugs mineurs, et mise à jour de la doc +\ProvidesPackage{ProfLycee}[2022/09/03 v1.2.5 - Aide pour l'utilisation de LaTeX en lycee] +% 1.2.5 Ajout d'une commande pour des boites à moustaches, en tikz +% 1.2.4 Correction de quelques bugs mineurs, et mise à jour de la doc % 1.2.3 Ajout d'un environnement simplifié pour du code python % 1.2.2 Ajouts de commandes pour des stats à 2 variables % 1.2.1 Amélioration de la gestion du csv pour les pixelart @@ -1966,4 +1967,88 @@ \end{tikzpicture}% } +%=============BOITES MOUSTACHES======== OK !! +\defKV[boiteamoustaches]{% + parametres=\def\BaMListe{#1},% + couleur=\def\BaMCouleur{#1},% + elevation=\def\BaMElevation{#1},% + hauteur=\def\BaMHauteur{#1},% + moyenne=\def\BaMMoyenne{#1},% + epaisseur=\def\BaMEpaisseur{#1},% + remplir=\def\BaMRemplissage{#1} +} + +\setKVdefault[boiteamoustaches]{% + couleur=black,% + elevation=1,% + hauteur=1,% + affmoyenne=false,% + epaisseur=thick,% + pointilles=false,% + valeurs=false,% + remplir=white +} + +\defKV[boiteamoustachesaxe]{% + min=\def\BaMAxeMin{#1},% + max=\def\BaMAxeMax{#1},% + elargir=\def\BaMAxeElarg{#1},% + epaisseur=\def\BaMAxeEpaisseur{#1},% + valeurs=\def\BaMAxeValeurs{#1} +} + +\setKVdefault[boiteamoustachesaxe]{% + elargir=0.05,% + epaisseur=thick,% + affvaleurs=false +} + +\newcommand\PLboitemoustaxe[1][]{ + \useKVdefault[boiteamoustachesaxe] + \setKV[boiteamoustachesaxe]{#1} + \def\BaMaxelargeur{\fpeval{\BaMAxeMax-\BaMAxeMin}} + \def\BaMaxexmin{\fpeval{\BaMAxeMin-\BaMAxeElarg*\BaMaxelargeur}} + \def\BaMaxexmax{\fpeval{\BaMAxeMax+\BaMAxeElarg*\BaMaxelargeur}} + \draw[\BaMAxeEpaisseur,->] (\BaMaxexmin,0) -- (\BaMaxexmax,0) ; + \ifboolKV[boiteamoustachesaxe]{affvaleurs} + {\foreach \x in \BaMAxeValeurs \draw[\BaMAxeEpaisseur] (\x,3pt)--(\x,-3pt) node[below=3pt] {\x} ;} + {} +} + +\newcommand\PLboitemoust[1][]{ + \useKVdefault[boiteamoustaches] + \setKV[boiteamoustaches]{#1} + \setsepchar[.]{/}% + \readlist*\BaMListeparams\BaMListe% + \itemtomacro\BaMListeparams[1]\BaMmin% + \itemtomacro\BaMListeparams[2]\BaMqu% + \itemtomacro\BaMListeparams[3]\BaMmed% + \itemtomacro\BaMListeparams[4]\BaMqt% + \itemtomacro\BaMListeparams[5]\BaMmax% + \draw[draw,\BaMEpaisseur,\BaMCouleur,fill=\BaMRemplissage] ({\BaMqu},{\BaMElevation-0.5*\BaMHauteur}) rectangle ({\BaMqt},{\BaMElevation+0.5*\BaMHauteur}) ; + \draw[\BaMEpaisseur,\BaMCouleur] (\BaMmin,{\BaMElevation-0.5*\BaMHauteur})--(\BaMmin,{\BaMElevation+0.5*\BaMHauteur}) (\BaMmax,{\BaMElevation-0.5*\BaMHauteur})--(\BaMmax,{\BaMElevation+0.5*\BaMHauteur}) (\BaMmed,{\BaMElevation-0.5*\BaMHauteur})--(\BaMmed,{\BaMElevation+0.5*\BaMHauteur}); + \draw[\BaMEpaisseur,\BaMCouleur] ({\BaMmin},{\BaMElevation})--({\BaMqu},{\BaMElevation}) ({\BaMqt},{\BaMElevation})--({\BaMmax},{\BaMElevation}) ; + \ifboolKV[boiteamoustaches]{affmoyenne} + {\filldraw[\BaMCouleur] ({\BaMMoyenne},{\BaMElevation}) circle[radius=2.5pt] ;} + {} + \ifboolKV[boiteamoustaches]{pointilles} + { + \draw[\BaMEpaisseur,densely dashed] (\BaMmin,{\BaMElevation-0.5*\BaMHauteur}) -- (\BaMmin,0) ; + \draw[\BaMEpaisseur,densely dashed] (\BaMqu,{\BaMElevation-0.5*\BaMHauteur}) -- (\BaMqu,0) ; + \draw[\BaMEpaisseur,densely dashed] (\BaMmed,{\BaMElevation-0.5*\BaMHauteur}) -- (\BaMmed,0) ; + \draw[\BaMEpaisseur,densely dashed] (\BaMqt,{\BaMElevation-0.5*\BaMHauteur}) -- (\BaMqt,0) ; + \draw[\BaMEpaisseur,densely dashed] (\BaMmax,{\BaMElevation-0.5*\BaMHauteur}) -- (\BaMmax,0) ; + } + {} + \ifboolKV[boiteamoustaches]{valeurs} + { + \filldraw (\BaMmin,0) circle[radius=2pt] node[below=4pt] {\num{\BaMmin}} ; + \filldraw (\BaMqu,0) circle[radius=2pt] node[below=4pt] {\num{\BaMqu}} ; + \filldraw (\BaMmed,0) circle[radius=2pt] node[below=4pt] {\num{\BaMmed}} ; + \filldraw (\BaMqt,0) circle[radius=2pt] node[below=4pt] {\num{\BaMqt}} ; + \filldraw (\BaMmax,0) circle[radius=2pt] node[below=4pt] {\num{\BaMmax}} ; + } + {} +} + \endinput \ No newline at end of file -- cgit v1.2.3