Retour

Source de statistique-Descriptive.tex

Fichier TeX
%%%%%%%%%%%%%%%%%%%%%  mai 2010  %%%%%%%%%%%%%%%%%%%%%%%
% http://www.cnam.fr/depts/maths/Membres/ghorbanzadeh/
\RequirePackage{xkeyval}
\RequirePackage{graphics}
\RequirePackage{graphicx}
%%% pour le titre des figures
\addto\captionsfrench{%
    \renewcommand{\figurename}{Figure }}
%%%%%%%%%%%%%%%%%%
\RequirePackage[hang,small]{caption}
\renewcommand{\captionfont}{\small}
\renewcommand{\captionlabelfont}{\sffamily}
\setlength{\captionmargin}{20pt}
%%%%%%%%%%%

%%%%%%%%%% Executer Asymptote %%%%%%%%%%
\newcommand{\ExecuteAsymptote}[1]{
 \immediate\write18{C:/Asymptote/asy.exe -noV  #1}
 \immediate\write18{@echo off} }
%%%%%%%%%% Fin Executer Asymptote %%%%%%%%%%

%%%%% Fichier externe pour les commandes Asymptote
\newwrite\FichierAsymptote

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%  Lecture des données discrètes %%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\newcounter{LecDFich}     % compteur pour les fichiers internes (discrètes)
\newcounter{ResDFich}    % compteur pour les fichiers internes (resultats discrets)
\newcounter{SimulDFich}     % Compteur pour les graphiques discrets
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%% commandes Asymptote pour la lecture des données discrètes
% #1 fichier contenant les données
\newcommand{\EcrireStatD}[1]{
\stepcounter{LecDFich} % incrémenter le compteur
\immediate\openout\FichierAsymptote LecD\theLecDFich.asy
\immediate\write\FichierAsymptote{import graph;}
\immediate\write\FichierAsymptote{import statistiqueDescriptive;}
\immediate\write\FichierAsymptote{size(250,200,IgnoreAspect);}
\immediate\write\FichierAsymptote{file fich = input("#1");}
\immediate\write\FichierAsymptote{int[] D = fich;}
\stepcounter{ResDFich} % incrémenter le compteur
\immediate\write\FichierAsymptote{real[] Res = new real[12];}
\immediate\write\FichierAsymptote{Tri(D, D.length);}
\immediate\write\FichierAsymptote{Res[0]=D.length; }
\immediate\write\FichierAsymptote{Res[1]=min(D); }
\immediate\write\FichierAsymptote{Res[2]=max(D); }
\immediate\write\FichierAsymptote{Res[3]=Moments(1,D);}
\immediate\write\FichierAsymptote{Res[4]=MomentsC(2,D); }
\immediate\write\FichierAsymptote{Res[5]=Mediane(D); }
\immediate\write\FichierAsymptote{Res[6]=Mode(D);}
\immediate\write\FichierAsymptote{Res[7]=MoyenneGeometrique(D);}
\immediate\write\FichierAsymptote{Res[8]=MoyenneQuadratique(D);}
\immediate\write\FichierAsymptote{Res[9]=MoyenneHarmonique(D);}
\immediate\write\FichierAsymptote{Res[10]=XSkewness(D); }
\immediate\write\FichierAsymptote{Res[11]=XKurtosis(D);}
\immediate\write\FichierAsymptote{string[] StatsNom={"Nombre de donn\'ees", "Min", "Max","Moyenne Arithm\'etique","Variance","M\'ediane","Mode","Moyenne G\'eometrique","Moyenne Quadratique","Moyenne Harmonique","Skewness", "Kurtosis"};}
\immediate\write\FichierAsymptote{EcrireTeX("ResD\theResDFich.tex",Res,StatsNom);}
\immediate\closeout\FichierAsymptote
}

%%%%%%%%%%%%%%%%%  Tracé de la fonction de répartition discrète %%%%%%%%%%%%%%%%%%%%
\newcommand{\EcrireFdrD}[1]{
\stepcounter{SimulDFich}
\immediate\openout\FichierAsymptote SimulD\theSimulDFich.asy
\immediate\write\FichierAsymptote{import graph;}
\immediate\write\FichierAsymptote{import statistiqueDescriptive;}
\immediate\write\FichierAsymptote{size(250,200,IgnoreAspect);}
\immediate\write\FichierAsymptote{file fich = input("#1");}
\immediate\write\FichierAsymptote{int[] D = fich;}
\immediate\write\FichierAsymptote{FdrDiscret(D);}
\immediate\write\FichierAsymptote{xaxis("$x$",Bottom,LeftTicks(Step=1,Label(fontsize(8))));}
\immediate\write\FichierAsymptote{yaxis("$F_X(x)$",Left,LeftTicks(Step=0.1,Label(fontsize(8))));}
\immediate\closeout\FichierAsymptote }

%%%%%%%%%%%%%%%%%  Tracé de l'histogramme discret %%%%%%%%%%%%%%%%%%%%
\newcommand{\EcrireHistD}[1]{
\stepcounter{SimulDFich} \immediate\openout\FichierAsymptote
SimulD\theSimulDFich.asy \immediate\write\FichierAsymptote{import
graph;} \immediate\write\FichierAsymptote{import
statistiqueDescriptive;}
\immediate\write\FichierAsymptote{size(300,200,IgnoreAspect);}
\immediate\write\FichierAsymptote{file fich = input("#1");}
\immediate\write\FichierAsymptote{int[] D = fich;}
\immediate\write\FichierAsymptote{HistD(D);}
%\immediate\write\FichierAsymptote{xaxis(Bottom,RightTicks(Label(fontsize(8))));}
%\immediate\write\FichierAsymptote{yaxis(Left,LeftTicks(Label(fontsize(8))));}
\immediate\closeout\FichierAsymptote }



%%%%%%%%%%%%%%%%%  Tracé du camembert %%%%%%%%%%%%%%%%%%%%
\newcommand{\EcrireCamembert}[1]{
\stepcounter{SimulDFich}
\immediate\openout\FichierAsymptote SimulD\theSimulDFich.asy
\immediate\write\FichierAsymptote{import graph;}
\immediate\write\FichierAsymptote{import statistiqueDescriptive;}
\immediate\write\FichierAsymptote{size(250,200,IgnoreAspect);}
\immediate\write\FichierAsymptote{file fich = input("#1");}
\immediate\write\FichierAsymptote{int[] D = fich;}
\immediate\write\FichierAsymptote{Camembert(D);}
\immediate\write\FichierAsymptote{xaxis(Bottom,RightTicks);}
\immediate\write\FichierAsymptote{yaxis(Left,LeftTicks(trailingzero));}
\immediate\closeout\FichierAsymptote
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%  Lecture des données qualitatives %%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%  Tracé du camembert données qualitatives %%%%%%%%%%%%%%%%%%%%
% #1 fichier contenant les charactères
% #2 fichier contenant les données
\newcommand{\EcrireCamembertQ}[2]{
\stepcounter{SimulDFich}
\immediate\openout\FichierAsymptote SimulD\theSimulDFich.asy
\immediate\write\FichierAsymptote{import graph;}
\immediate\write\FichierAsymptote{import statistiqueDescriptive;}
%\immediate\write\FichierAsymptote{import CamembertQ;}
\immediate\write\FichierAsymptote{size(300,250,IgnoreAspect);}
\immediate\write\FichierAsymptote{file fichS = input("#1");}
\immediate\write\FichierAsymptote{string[] Nom = fichS;}
\immediate\write\FichierAsymptote{file fichD = input("#2");}
\immediate\write\FichierAsymptote{int[] D = fichD;}
\immediate\write\FichierAsymptote{CamembertDQ(D , Nom);}
\immediate\closeout\FichierAsymptote }

%%%%%%%%%%%%%%%%%  Tracé de l'histogramme données qualitatives %%%%%%%%%%%%%%%%%%%%
% #1 fichier contenant les charactères
% #2 fichier contenant les données
\newcommand{\EcrireHistDQ}[2]{
\stepcounter{SimulDFich}
\immediate\openout\FichierAsymptote SimulD\theSimulDFich.asy
\immediate\write\FichierAsymptote{import graph;}
\immediate\write\FichierAsymptote{import statistiqueDescriptive;}
%\immediate\write\FichierAsymptote{import HistDQ;}
\immediate\write\FichierAsymptote{size(400,200,IgnoreAspect);}
\immediate\write\FichierAsymptote{file fichS = input("#1");}
\immediate\write\FichierAsymptote{string[] Nom = fichS;}
\immediate\write\FichierAsymptote{file fichD = input("#2");}
\immediate\write\FichierAsymptote{int[] D = fichD;}
\immediate\write\FichierAsymptote{HistoDQ(D , Nom);}
%\immediate\write\FichierAsymptote{xaxis(Bottom,RightTicks(Label(fontsize(8))));}
%\immediate\write\FichierAsymptote{yaxis(Left,LeftTicks(Label(fontsize(8))));}
\immediate\closeout\FichierAsymptote }

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%  Lecture des données continues %%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\newcounter{LecCFich}      % compteur pour les fichiers internes (continues)
\newcounter{ResCFich}      % compteur pour les fichiers internes (resultats continus)
\newcounter{SimulCFich}    % compteur pour les fichiers internes (graphs continus)

%%%%%%%%% commandes Asymptote pour la lecture des données continues
% #1 fichier contenant les données
% #2 nombre de classes
\newcommand{\EcrireStatC}[2]{%
\stepcounter{LecCFich} % incrémenter le compteur
\immediate\openout\FichierAsymptote LecC\theLecCFich.asy
\immediate\write\FichierAsymptote{import graph;}
\immediate\write\FichierAsymptote{import statistiqueDescriptive;}
\immediate\write\FichierAsymptote{file fich = input("#1");}
\immediate\write\FichierAsymptote{real[] D = fich;}
\stepcounter{ResCFich} % incrémenter le compteur
\immediate\write\FichierAsymptote{real[] Res = new real[13];}
\immediate\write\FichierAsymptote{Res[0]=D.length; }
\immediate\write\FichierAsymptote{Res[1]=min(D); }
\immediate\write\FichierAsymptote{Res[2]=max(D); }
\immediate\write\FichierAsymptote{Res[3]=MomentsContinu(1,D,#2);}
\immediate\write\FichierAsymptote{Res[4]=MomentsContinuC(2,D,#2);}
\immediate\write\FichierAsymptote{Res[5]=MoyenneGeometriqueC(D,#2);}
\immediate\write\FichierAsymptote{Res[6]=MoyenneQuadratiqueC (D,#2);}
\immediate\write\FichierAsymptote{Res[7]=MoyenneHarmoniqueC (D,#2);}
\immediate\write\FichierAsymptote{Res[8]=MedianeC(D,#2);}
\immediate\write\FichierAsymptote{Res[9]=XSkewnessC(D,#2);}
\immediate\write\FichierAsymptote{Res[10]=XKurtosisC(D,#2);}
\immediate\write\FichierAsymptote{Res[11]=ClasseModale(D,#2,0); }
\immediate\write\FichierAsymptote{Res[12]=ClasseModale(D,#2,1); }
\immediate\write\FichierAsymptote{string[] StatsNom={"Nombre de donn\'ees", "Min", "Max","Moyenne Arithm\'etique","Variance","Moyenne G\'eometrique","Moyenne Quadratique","Moyenne Harmonique","M\'ediane","Skewness", "Kurtosis","Classe Modale"};}
\immediate\write\FichierAsymptote{EcrireTeXC("ResC\theResCFich.tex",Res,StatsNom);}
\immediate\closeout\FichierAsymptote
}

%%%%%%%%% Tracé de la FDR continue %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% #1 fichier contenant les données
\newcommand{\FDRStatC}[1]{%
\stepcounter{SimulCFich} % incrémenter le compteur
\immediate\openout\FichierAsymptote SimulC\theSimulCFich.asy
\immediate\write\FichierAsymptote{import graph;}
\immediate\write\FichierAsymptote{import statistiqueDescriptive;}
\immediate\write\FichierAsymptote{size(250,200,IgnoreAspect);}
\immediate\write\FichierAsymptote{file fich = input("#1");}
\immediate\write\FichierAsymptote{real[] D = fich;}
\immediate\write\FichierAsymptote{FdrContinue(D,11);}
\immediate\write\FichierAsymptote{xaxis("$x$",Bottom,RightTicks(Label(fontsize(8))));}
\immediate\write\FichierAsymptote{yaxis("$F_X(x)$",Left,LeftTicks(Label(fontsize(8))));}
\immediate\closeout\FichierAsymptote
}

%%%%%%%%% Tracé de l'histogramme continu %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% #1 fichier contenant les données
% #2 nombre de classes
\newcommand{\HistStatC}[2]{%
\stepcounter{SimulCFich} % incrémenter le compteur
\immediate\openout\FichierAsymptote SimulC\theSimulCFich.asy
\immediate\write\FichierAsymptote{import graph;}
\immediate\write\FichierAsymptote{import statistiqueDescriptive;}
\immediate\write\FichierAsymptote{size(450,400,IgnoreAspect);}
\immediate\write\FichierAsymptote{file fich = input("#1");}
\immediate\write\FichierAsymptote{real[] D = fich;}
\immediate\write\FichierAsymptote{HistContinue(D,#2);}
\immediate\write\FichierAsymptote{xaxis(Bottom,RightTicks(Label(fontsize(8))));}
\immediate\write\FichierAsymptote{yaxis(Left,LeftTicks(Label(fontsize(8))));}
\immediate\closeout\FichierAsymptote
}


\makeatletter

%%%%%%%%%%  IHM pour l'analyse des données discrètes %%%%%%%%
% paramètre pour fichier des données
\define@cmdkey{AnalyseD}{donnees}{\def\FichDon{#1}}
\def\AnalyseD{\@ifnextchar[\@AnalyseD{\@AnalyseD[]}}
\def\@AnalyseD[#1]{\setkeys{AnalyseD}{#1}%
\EcrireStatD{\FichDon}
% Exécution de l'Asymptote
\ExecuteAsymptote{LecD\theLecDFich.asy}
% inclusion des résultats
\input{ResD\theResDFich.tex}
\immediate\write18{del LecD\theLecDFich.asy}
}
%%%%%%%%%% Fin IHM %%%%%%%%%%%%%%%%%%%


%%%%%%%  IHM pour l'Histogramme des données discrètes %%%%%%
% paramètre pour fichier des données
\define@cmdkey{HistD}{donnees}{\def\FichDon{#1}}
\def\HistD{\@ifnextchar[\@HistD{\@HistD[]}}
\def\@HistD[#1]{\setkeys{HistD}{#1}%
\EcrireHistD{\FichDon}
% Exécution de l'Asymptote
\ExecuteAsymptote{SimulD\theSimulDFich.asy}
\begin{figure}[H]
\centering
\includegraphics{SimulD\theSimulDFich.eps}
\caption{Histogramme des donn\'ees}
\end{figure}
\immediate\write18{del SimulD\theSimulDFich.asy}
}
%%%%%%%%%% Fin IHM %%%%%%%%%%%%%%%%%%%

%%%%%%%  IHM pour le graphe de la fonction de répartition des données discrètes %%%%%%
% paramètre pour fichier des données
\define@cmdkey{FDRD}{donnees}{\def\FichDon{#1}}
\def\FDRD{\@ifnextchar[\@FDRD{\@FDRD[]}}
\def\@FDRD[#1]{\setkeys{FDRD}{#1}%
\EcrireFdrD{\FichDon}
% Exécution de l'Asymptote
\ExecuteAsymptote{SimulD\theSimulDFich.asy}
\begin{figure}[H]
\centering
\includegraphics{SimulD\theSimulDFich.eps}
\caption{Fonction de r\'epartition des donn\'ees}
\end{figure}
\immediate\write18{del SimulD\theSimulDFich.asy}
}
%%%%%%%%%% Fin IHM %%%%%%%%%%%%%%%%%%%


%%%%%%%  IHM pour l'Histogramme et tableau des données discrètes %%%%%%
% paramètre pour fichier des données
\define@cmdkey{HTabD}{donnees}{\def\FichDon{#1}}
\def\HTabD{\@ifnextchar[\@HTabD{\@HTabD[]}}
\def\@HTabD[#1]{\setkeys{HTabD}{#1}%
\EcrireHistD{\FichDon}
\EcrireStatD{\FichDon}
% Exécution de l'Asymptote
\ExecuteAsymptote{SimulD\theSimulDFich.asy}
% Exécution de l'Asymptote
\ExecuteAsymptote{LecD\theLecDFich.asy}
% inclusion des résultats
\begin{figure}[H]
\begin{minipage}[c]{.5\textwidth}
\includegraphics[width=7.5cm,height=8cm]{SimulD\theSimulDFich.eps}
\end{minipage} \hspace*{.09\textwidth}\hfill
\begin{minipage}[t]{.4\textwidth}
{\small \input{ResD\theResDFich.tex} }
\end{minipage}
\caption{Histogramme des donn\'ees.}
\end{figure}
\immediate\write18{del SimulD\theSimulDFich.asy}
\immediate\write18{del LecD\theLecDFich.asy}
}
%%%%%%%%%% Fin IHM %%%%%%%%%%%%%%%%%%%


%%%%%%%  IHM pour le graphique circulaire (Camembert) des données discrètes %%%%%%
% paramètre pour fichier des données
\define@cmdkey{Circulaire}{donnees}{\def\FichDon{#1}}
\define@cmdkey{Circulaire}{captionfig}{\def\TitreFigD{#1}}
\setkeys{Circulaire}{captionfig=Graphique circulaire des donn\'ees}
\def\Circulaire{\@ifnextchar[\@Circulaire{\@Circulaire[]}}
\def\@Circulaire[#1]{\setkeys{Circulaire}{#1}%
\EcrireCamembert{\FichDon}
% Exécution de l'Asymptote
\ExecuteAsymptote{SimulD\theSimulDFich.asy}
\begin{figure}[H]
\centering
\includegraphics{SimulD\theSimulDFich.eps}
\caption{\TitreFigD}
\end{figure}
\immediate\write18{del SimulD\theSimulDFich.asy}
}
%%%%%%%%%% Fin IHM %%%%%%%%%%%%%%%%%%%

%%%%%%%  IHM pour le graphique circulaire (Camembert) des données qualitatives %%%%%%
% paramètre pour fichier des données
\define@cmdkey{CirculaireDQ}{donQual}{\def\FichString{#1}}
\define@cmdkey{CirculaireDQ}{donnees}{\def\FichDon{#1}}
\define@cmdkey{CirculaireDQ}{captionfig}{\def\TitreFig{#1}}
\setkeys{CirculaireDQ}{captionfig=Graphique circulaire des donn\'ees}
\def\CirculaireDQ{\@ifnextchar[\@CirculaireDQ{\@CirculaireDQ[]}}
\def\@CirculaireDQ[#1]{\setkeys{CirculaireDQ}{#1}%
\EcrireCamembertQ{\FichString}{\FichDon}
% Exécution de l'Asymptote
\ExecuteAsymptote{SimulD\theSimulDFich.asy}
\begin{figure}[H]
\centering
\includegraphics{SimulD\theSimulDFich.eps}
\caption{\TitreFig}
\end{figure}
\immediate\write18{del SimulD\theSimulDFich.asy} }
%%%%%%%%%% Fin IHM %%%%%%%%%%%%%%%%%%%
%%%%%%%  IHM pour l'Histogramme des données qualitatives %%%%%%
% paramètre pour les fichiers des données
\define@cmdkey{HistDQ}{donQual}{\def\FichString{#1}}
\define@cmdkey{HistDQ}{donnees}{\def\FichDon{#1}}
\define@cmdkey{HistDQ}{captionfig}{\def\TitreFig{#1}}
\setkeys{HistDQ}{captionfig=Histogramme des donn\'ees}
\def\HistDQ{\@ifnextchar[\@HistDQ{\@HistDQ[]}}
\def\@HistDQ[#1]{\setkeys{HistDQ}{#1}%
\EcrireHistDQ{\FichString}{\FichDon}
% Exécution de l'Asymptote
\ExecuteAsymptote{SimulD\theSimulDFich.asy}
\begin{figure}[H]
\centering
\includegraphics{SimulD\theSimulDFich.eps}
\caption{\TitreFig}
\end{figure}
\immediate\write18{del SimulD\theSimulDFich.asy}
}
%%%%%%%%%% Fin IHM %%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%  IHM pour l'analyse des données continues %%%%%%%%
% paramètre pour fichier des données
\define@cmdkey{AnalyseC}{donnees}{\def\FichDonC{#1}}
% paramètre pour le nombre de classes
\define@cmdkey{AnalyseC}{nbClasses}{\def\NbClasses{#1}}
% valeurs par defaut
\presetkeys{AnalyseC}{nbClasses=5}{}
\def\AnalyseC{\@ifnextchar[\@AnalyseC{\@AnalyseC[]}}
\def\@AnalyseC[#1]{\setkeys{AnalyseC}{#1}%
\EcrireStatC{\FichDonC}{\NbClasses}
% Exécution de l'Asymptote
\ExecuteAsymptote{LecC\theLecCFich.asy}
% inclusion des résultats
\input{ResC\theResCFich.tex}
\immediate\write18{del LecC\theLecCFich.asy}
}

%%%%%%%%%% Fin IHM %%%%%%%%%%%%%%%%%%%

%%%%%%%  IHM pour le graphe de la fonction de répartition des données continues %%%%%%
% paramètre pour fichier des données
\define@cmdkey{FDRC}{donnees}{\def\FichDon{#1}}
\def\FDRC{\@ifnextchar[\@FDRC{\@FDRC[]}}
\def\@FDRC[#1]{\setkeys{FDRC}{#1}%
\FDRStatC{\FichDon}
% Exécution de l'Asymptote
\ExecuteAsymptote{SimulC\theSimulCFich.asy}
\begin{figure}[H]
\centering
\includegraphics{SimulC\theSimulCFich.eps}
\caption{Fonction de r\'epartition empirique des donn\'ees}
\end{figure}
\immediate\write18{del SimulC\theSimulCFich.asy}
}

%%%%%%%%%% Fin IHM %%%%%%%%%%%%%%%%%%%

%%%%%%%  IHM pour l'Histogramme des données continues %%%%%%
% paramètre pour fichier des données
\define@cmdkey{HistC}{donnees}{\def\FichDon{#1}}
% paramètre pour le nombre de classes
\define@cmdkey{HistC}{nbClasses}{\def\NbClasses{#1}}
% valeurs par default
\presetkeys{HistC}{nbClasses=5}{}
\def\HistC{\@ifnextchar[\@HistC{\@HistC[]}}
\def\@HistC[#1]{\setkeys{HistC}{#1}%
\HistStatC{\FichDon}{\NbClasses}
% Exécution de l'Asymptote
\ExecuteAsymptote{SimulC\theSimulCFich.asy}
\begin{figure}[H]
\centering
\includegraphics{SimulC\theSimulCFich.eps}
\caption{Histogramme des donn\'ees  r\'eparties en \NbClasses ~classes.}
\end{figure}
\immediate\write18{del SimulC\theSimulCFich.asy}
}
%%%%%%%%%% Fin IHM %%%%%%%%%%%%%%%%%%%

%%%%%%%  IHM pour l'Histogramme et tableau des données continues %%%%%%
% paramètre pour fichier des données
\define@cmdkey{HTabC}{donnees}{\def\FichDon{#1}}
% paramètre pour le nombre de classes
\define@cmdkey{HTabC}{nbClasses}{\def\NbClasses{#1}}
% valeurs par default
\presetkeys{HTabC}{nbClasses=5}{}
\def\HTabC{\@ifnextchar[\@HTabC{\@HTabC[]}}
\def\@HTabC[#1]{\setkeys{HTabC}{#1}%
\HistStatC{\FichDon}{\NbClasses}
% Exécution de l'Asymptote
\ExecuteAsymptote{SimulC\theSimulCFich.asy}
\EcrireStatC{\FichDon}{\NbClasses}
% Exécution de l'Asymptote
\ExecuteAsymptote{LecC\theLecCFich.asy}
% inclusion des résultats
\begin{figure}[H]
\begin{minipage}[c]{.5\textwidth}
\includegraphics[width=7.5cm,height=8cm]{SimulC\theSimulCFich.eps}
\end{minipage} \hspace*{.09\textwidth}\hfill
\begin{minipage}[t]{.4\textwidth}
{\small \input{ResC\theResCFich.tex} }
\end{minipage}
\caption{Histogramme des donn\'ees  r\'eparties en \NbClasses ~classes.}
\end{figure}
\immediate\write18{del SimulC\theSimulCFich.asy}
\immediate\write18{del LecC\theLecCFich.asy}
}
%%%%%%%%%% Fin IHM %%%%%%%%%%%%%%%%%%

\makeatother