Inquiridor
Gráficos - Tamanho da barra

Pergunta
-
Seguinte criei um gráfico onde ele puxa informações do banco de dados e faz algumas contas, baseado nos resultads são feitas as barras..
Só que não consigo dar um tamanho padrão para as barras, meu gráfico:
<td bgcolor="#d1d6df"><font size="1" face="arial">No Mes </font></td>
<td bgcolor="#f5f5f5" width="150"><img src="images/verde.gif" width="<%=((var*100)/var)%>" height="10"></td>
<td bgcolor="#f5f5f5" align="right"><font size="1"><%=ip0%></font></td>
<td bgcolor="#d1d6df" width="150"><img src="images/azul.gif" width="<%=((var*100)/var)%>" height="10"></td>
<td bgcolor="#d1d6df" align="right"><font size="1"><%=var%></font></td>
<td bgcolor="#f5f5f5" width="150"><img src="images/verde.gif" width="<%=((var*100)/var)%>" height="10"></td>
<td bgcolor="#f5f5f5" align="right"><font size="1"><%=var%></font></td>
<td bgcolor="#d1d6df" width="150"><img src="images/azul.gif" width="<%=((var*100)/var)%>" height="10"></td>
<td bgcolor="#d1d6df" align="right"><font size="1"><%=var%></font></td>Eu precisaria fazer algo do tipo assim:
A maior variavel se igualasse a 100 (onde 100 seria o tamanho máximo da barra)
A menor variavel se igualasse a 0 (onde 0 seria o tamanho minimoi da barra, ou seja, nada)
E no meio disso variáveis se ajustassem de acordo com o tamanho, seguindo as necessidades acima, não sei ao certo se preciso fazer isso de igualar mas foi uma forma na qual pensei...
Todas as Respostas
-
O fato de eu não padronizar o tamanho das barras é porque os números vão variar de mais, algumas tabelas terão números de -5 até +5 outras de 0 a 5 e assim por diante, não são números muito altos mas as barras também não são muito grande porque são 4 gráficos um do lado do outro por isso a necessidade de igualar igual citei acima...
-
eu fiz assim
if maxindex=index0 then
nindex0=100
else
nindex0=index0*100/maxindex
end if
if maxindex=index1 then
nindex1=100
else
nindex1=index1*100/maxindex
end if
if maxindex=index2 then
nindex2=100
else
nindex2=index2*100/maxindex
end if
if maxindex=index3 then
index3=100
else
nindex3=index3*100/maxindex
end if
if maxindex=index4 then
nindex4=100
else
nindex4=index4*100/maxindex
end if
if maxindex=index5 then
nindex5=100
else
nindex5=index5*100/maxindex
end if
if maxindex=index6 then
nindex6=100
else
nindex6=index6*100/maxindex
end ifsóque se for menor que 0 a barra fica no zero sendo que se for menor que zero o menor número será 0 e dai por diante huahau tentem me intender ^^, ordens do patrão .. =D
-
Flavio desculpe mas nao estou conseguindo enxergar esta sua lógica, por exemplo, voce esta usando os cálculos iguais para ambas as barras certo.
((var*100)/var)
Independente da informaçao que entrar em "var" voce esta multiplicando e dividindo pelo mesmo valor e o resulta seria sempre 100, ou seja, as barras estariam sempre com a largura igual a 100.
Nao sei se é isso que voce quer mas digamos que voce tenha 1000 carros, deste 1000 sao os seguintes dados.
barraverde = 200 palio
barraazul = 800 gol
tam_barraverde = (200*100)/1000
tam_barraazul = (800*100)/1000
Ai sim voce teria uma barra com 80px e 20px.
Bom se nao for isso por favor explique melhor
Abraços
Estevam
-
-
Seguinte eu achei na internet, olha ele fez igual eu só que por aqui você via entender melhor:
resultado=(valor*100)/total)
<img src="barramidle.gif" width="<%=resultado%>%" height="10">
Bom até ai tudo bem, e para não dar pau de o valor maior dar 0 eu igualei ele a 100.
Só que no meu gráfico podem aparecer números negativos isso que ta me ferrando...
Se o npumero for negativo o menos npumero seria 0 , no ssaco -5 a 5, 0=-5, 5=100, só que aqui todo numero abaixo de 0 fica no 0 na barra =D
Entendeu:?
-
Flavio, voce esta trabalhando com tabelas certo?
Entao crie duas colunas, sendo que coluna direita fica para valores positivos e a coluna esquerda fica para valores negativos, se nao houver valores negativos todas as imagens da coluna esquerda devem assumir largura 0.
Abraços
Estevam
-