Page 1 sur 1

Création d'un histogramme

MessagePublié: 03 Jan 2005 à 15:31
par DomNotes
Code à inclure ds le $$HTMLHead:


"<script>"+ @NewLine +
"function AffHisto(tabx,taby,incX,Y,titre,dX,dY,decal) {" + @NewLine +
" var ie=\"\";var ns=\"\";" + @NewLine +
" var nb=taby.length;" + @NewLine +
" var max=GetMax(taby);" + @NewLine +
" if(max==0) {max=1; }" + @NewLine +
" var min=GetMin(taby);" + @NewLine +
" var incY=Y/max;" + @NewLine +
" var tailleY=0; var tailleX=0;" + @NewLine +
" var ecartcolonne = 11;" + @NewLine +

" for(i=0;i<=Math.round(max/decal);i++) {" + @NewLine +
" ie+=\"<DIV style='position:absolute;top:\"+(dY-decal*i*(incY))+\";left:\"+(dX-5)+\"'><IMG src='./fondRougeNotes.jpg?OpenImageResource' height='1' width='\"+(nb*(incX+ecartcolonne)+5)+\"'></DIV>\";" + @NewLine +
" ie+=\"<DIV style='position:absolute;top:\"+(dY-8-decal*i*(incY))+\";left:\"+(dX-30)+\"'><FONT size='-2' color='red'>\"+(i*decal)+\"</FONT></DIV>\";" + @NewLine +

" }" + @NewLine +


" for(var i=0;i<nb;i++)" + @NewLine +
" { tailleY=Math.floor(taby*incY);" + @NewLine +
" tailleX=Math.floor(incX);" + @NewLine +
" var nom=\"./fondVertFonce.jpg?OpenImageResource\"; if ((taby==max)||(taby==min)) {nom=\"./fondVertClaire.jpg?OpenImageResource\";}" + @NewLine +
" somme = SomTab(taby);" + @NewLine +
" pct=taby/somme*100;" + @NewLine +
" pct=Math.round(pct*100)/100;" + @NewLine +
" infobulle = tabx+\" : \"+(taby)+' soit '+pct+' % des réponses.'; " + @NewLine +
" ie+=\"<DIV style='position:absolute;height:100;top:\"+(dY-tailleY)+\";left:\"+(dX+i*(incX+ecartcolonne))+\"'>\";" + @NewLine +
" ie+=\"<img valign='bottom' border=0 src='\"+nom+\"' width=\"+tailleX+\" height=\"+tailleY+\" alt='\"+infobulle+\"'>\";" + @NewLine +
" ie+=\"<BR><font size=0><BR><table border=0 cellpadding=0 cellspacing=0><tr><td class=styleCellRelief width=\"+incX+\"><FONT size='2' color=#3F8080><CENTER>\"+tabx+\"</CENTER></FONT></td></tr></table>\"+\"</DIV>\";" + @NewLine +
" ie+=\"<DIV style='position:absolute;height:100;top:\"+(dY-tailleY-24)+\";left:\"+(dX+i*(incX+ecartcolonne))+\"'><table border=0 width=\"+incX+\"><tr><td width=33%></td><td width=33% align='center' bgcolor=#FFFFFF><font size=2 color=3F8080>\"+taby+\"</td><td width=33%></td></tr></table></DIV>\";" + @NewLine +

" }" + @NewLine +

" var nbtotal=GetMoy(taby)*nb;" + @NewLine +

" ie+=\"<DIV style='position:absolute;top:\"+(dY+60)+\";left:\"+(dX-5)+\"'><FONT size=3 color=#3F8080><u>\"+titre+\" </FONT></B></DIV>\";" + @NewLine +



" if ((document.all)||(document.getElementById)) {disp(ie)}" + @NewLine +
" else {disp(ns)}" + @NewLine +
"}" + @NewLine +
"function disp(txt) { document.write(txt) }" + @NewLine +

" function Histo(tabx,taby,incX,Y,titre,dX,dY) {"+ @NewLine +
" maxy = GetMax(taby);"+ @NewLine +
" inc = 5000;"+ @NewLine +
" if(maxy<10000) inc=2000;"+ @NewLine +
" if(maxy<5000) inc=1000;"+ @NewLine +
" if(maxy<1000) inc=200;"+ @NewLine +
" if(maxy<500) inc=100;"+ @NewLine +
" if(maxy<100) inc=20;"+ @NewLine +
" if(maxy<50) inc=10;"+ @NewLine +
" if(maxy<10) inc=2;"+ @NewLine +
" AffHisto(tabX,tabY,incX,Y,titre,dX,dY,inc);"+ @NewLine +
"}" + @NewLine +
"// Déclaration du tableau des libellés de colonnes" + @NewLine +
" var tabX=new MakeTab("+AgtH_ListeColonneName+");" + @NewLine +
"// Déclaration du tableau des valeurs de colonnes" + @NewLine +
" var tabY=new MakeTab("+AgtH_ListeColonneValue+");" + @NewLine +

" // AffHisto(tabX,tabY,largeur d'une barre, hauteur,titre,position en X, position en Y) {" + @NewLine +
" Histo(tabX,tabY,90,220,'"+AgtH_Titre+"',100,400);" + @NewLine +
"</script>"+ @NewLine