Ce script est déclaré obsolète. Il n'est conservé que pour information.
Script qui permet de tracer des données d'un tableau sous forme d'histogramme. Exemple avec les visites sur le site Tout JavasScript en Juillet 1999 (souvenir souvenir...)
<HTML><HEAD><TITLE>JScript - Tracé d'histogrammes </TITLE><SCRIPT LANGUAGE="JavaScript">//D'autres scripts sur http://www.multimania.com/jscript//Si vous utilisez ce script, merci de m'avertir ! < jscript@multimania.com >var tabX=new MakeTab("01/07/99","02/07/99","03/07/99","04/07/99","05/07/99","06/07/99","07/07/99","08/07/99","09/07/99","10/07/99","11/07/99","12/07/99","13/07/99","14/07/99","15/07/99","16/07/99","17/07/99","18/07/99","19/07/99","20/07/99","21/07/99","22/07/99","23/07/99","24/07/99","25/07/99","26/07/99","27/07/99");var tabY=new MakeTab(77,67,22,27,84,90,85,113,89,31,38,97,74,29,86,69,28,18,98,94,86,98,81,21,29,86,71);var tabZ=new MakeTab(70,68,17,28,89,93,92,101,85,28,51,110,93,24,135,73,33,20,113,108,118,101,80,30,35,89,87);function AffHisto(tabx,taby,X,Y,titre) { // tabx : tableau des coordonnées // taby : tableau des abscisses // X et Y, environ taille en pixels de l'affichage de l'histo // titre, titre sous le graphe // unitx et unity , unité des axes x et y var nb=taby.length; if (nb!=tabx.length) alert("Probleme de taille de tableaux"); var incX=Math.floor(X/nb); var max=GetMax(taby); var min=GetMin(taby); var incY=Y/max; var tailleY=0; var tailleX=0; disp("<TABLE width="+X+" height="+Y+"border=1><TR>"); for(var i=0;i<nb;i++) { tailleY=Math.floor(taby[i]*incY); tailleX=Math.floor(incX); disp("<TD width="+incX+" valign='bottom' border='1'>"); disp("<img border=0 src='histo.gif' width="+tailleX+" height="+tailleY+" alt='"+tabx[i]+" : "+taby[i]+"'>"); disp("</TD>"); } disp("</TR></TABLE>"); disp("<TABLE width="+X+"><TR><TD>"); disp("<FONT SIZE='-1'> Entre "+tabx[0]+" et "+tabx[nb-1]+", Maximum = "+max+" et Minimum = "+min+", Moyenne = "+GetMoy(taby)+"</FONT><BR>"); disp("<FONT SIZE='3' COLOR='#339966'><CENTER><B>"+titre+"</B></CENTER></FONT></TD></TR></TABLE>")}function GetMoy(tab) { var nb=tab.length; var moy=0; for(var i=0;i<nb;i++) {moy=moy+tab[i];} if (nb!=0) return Math.round(moy/nb);}function GetMax(tab) { var max=tab[0]; var nb=tab.length; for(var i=0;i<nb;i++) {max=Math.max(max,tab[i]);} return max;}function GetMin(tab) { var min=tab[0]; var nb=tab.length; for(var i=0;i<nb;i++) {min=Math.min(min,tab[i]);} return min;}function MakeTab() { this.length = MakeTab.arguments.length; for (var i = 0; i < this.length; i++) this[i] = MakeTab.arguments[i];}function disp(txt) { document.write(txt) }</script></HEAD><BODY text="#000000" bgcolor="#FFFFFF" alink="#FF8C00" link="#FF8C00" vlink="#FF8C00"><FONT FACE="Arial" SIZE='-1' COLOR="#000000"><CENTER>Voici un exemple de tracé d'histogramme sur les statistiques du site <BR><B>http://www.multimania.com/jscript</B><BR><SCRIPT LANGUAGE="JavaScript"><!-- AffHisto(tabX,tabY,500,100,"Les visites sur JScript en Juillet"); disp("<BR>"); AffHisto(tabX,tabZ,500,100,"Les recherches de scripts en Juillet");//--></script><BR>On remarque bien la baisse de fréquentation les week-ends et le 14 juillet !</CENTER></FONT></BODY></HTML><!-- Script développé par Olivier Hondermarck Mail: jscript@multimania.com --><!-- D'autres scripts et des conseils sur http://www.multimania.com/jscript -->