Delphi - Modificar colores de un Tchart cargado desde BD

 
Vista:

Modificar colores de un Tchart cargado desde BD

Publicado por Ricardo García (3 intervenciones) el 07/05/2008 16:25:28
Hola a todos un saludo, tengo un problema y no estoy pudiendo resolverlo.
Realizé una aplicación la cual presenta unos reportes en cuadros estadísticos, utilizo QuickReports para esto y el TeeChart para las gráficas, mis serie es por columnas. Los datos que voy a mostrar en estos reportes y en el TeeChart los saco de una Base de Datos.

Necesito que cada columna, dependiendo del valor que saque de la BD, se pinte de un color diferente (Por Ejemplo. Si el valor es entre 0 y 3 que se pinte rojo, si el valor es entre 3,1 y 6 que se pinte verde).

Porfavor, espero me puedan ayudar. Muchas Gracias anticipadamente
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

RE:Modificar colores de un Tchart cargado desde B

Publicado por E.T. (1244 intervenciones) el 07/05/2008 17:31:32
Prueba esto

for i:=0 to no_barras-1 do begin
if Series1.YValue[i] <10 then
Series1.ValueColor[i]:=100000
else if Series1.YValue[i] <20 then
Series1.ValueColor[i]:=200000
else if Series1.YValue[i] <30 then
Series1.ValueColor[i]:=300000
end;
//así hasta el número de colores que quieras
//tambien en lugar de poner un número, puedes poner el color clRed, clBlue, etc...

for i:=0 to no_barras-1 do begin
if Series1.YValue[i] <10 then
Series1.ValueColor[i]:=clRed
else if Series1.YValue[i] <20 then
Series1.ValueColor[i]:=clBlue
else if Series1.YValue[i] <30 then
Series1.ValueColor[i]:=clBlack
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Modificar colores de un Tchart cargado desde B

Publicado por Ricardo García (3 intervenciones) el 08/05/2008 22:37:59
Me funciono excelente, pero OJO colocando ese codigo en el evento BeforeDrawSeries, en otro lugar jamás me funcionaba, ahora tengo una duda mas, como hago para cambiar los colores de la Leyenda ??? no se cambian automaticamente, ya que todos se quedan de color rojo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

RE:Modificar colores de un Tchart cargado desde B

Publicado por E.T. (1244 intervenciones) el 08/05/2008 23:49:04
Yo penzé que con hacer un repaint funcionaría pero no es necesario, con el siguiente codigo, lo puse en el evento OnClick de la Form, y me cambia el color de las barras sin problema incluso el color en la leyenda, no se por que a ti no te funcione, los valores de muestra que yo ingreso los pongo en el OnActivate de la form

for i:=0 to Series1.XValues.Count-1 do begin
if Series1.YValue[i] <10 then
Series1.ValueColor[i]:=100000
else if Series1.YValue[i] <20 then
Series1.ValueColor[i]:=200000
else if Series1.YValue[i] <30 then
Series1.ValueColor[i]:=300000
else if Series1.YValue[i] <40 then
Series1.ValueColor[i]:=400000
else if Series1.YValue[i] <50 then
Series1.ValueColor[i]:=500000
else if Series1.YValue[i] <60 then
Series1.ValueColor[i]:=600000
else if Series1.YValue[i] <70 then
Series1.ValueColor[i]:=700000
else if Series1.YValue[i] <80 then
Series1.ValueColor[i]:=800000
else if Series1.YValue[i] <90 then
Series1.ValueColor[i]:=900000
end;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Modificar colores de un Tchart cargado desde B

Publicado por Ricardo García (4 intervenciones) el 09/05/2008 00:02:25
Esque utilizo el TeeChart para unos reportes !!! y no hay como hacer click en el reporte

Una pregunta ................................No sabes como se cambian los colores y el texto en la leyenda del mismo TeeChart ??? Porfavor estoy desesperado llevo toda la tarde intentando averiguar y no me sale. Porfavor
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 65
Oro
Ha mantenido su posición en Delphi (en relación al último mes)
Gráfica de Delphi

RE:Modificar colores de un Tchart cargado desde B

Publicado por E.T: (1244 intervenciones) el 09/05/2008 00:12:41
Ha, eso cambia todo, el teeChart para QReport yo no lo uso, he tenido problemas, pero lo solucioné con algo de trampa, explico:

Uso un teeChart normal, luego cargo las series y sus datos, luego ya cuando está como deseo, hago una imagen del chart con la siguiente linea

Chart1.SaveToBitmapFile('c:imagen_chart.bmp');

Y luego esa imagen la cargo al reporte con un TQRImage, y se soluciona todo, el texto en la leyenda no se como modificarlo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Modificar colores de un Tchart cargado desde B

Publicado por coso (7 intervenciones) el 11/05/2008 20:59:43
Existe el componente TQRChart para el quick report...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar