Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-12-2003
Masu Masu is offline
Miembro
 
Registrado: jul 2003
Posts: 21
Poder: 0
Masu Va por buen camino
cambiar tipo de grafico en Chart en ejecucion

Hola a todos,


tengo un problemita y es que no se como puedo cambiar el tipo de grafico de un tchart en ejecucion, es decir, si lo configuro para que sea como una tarta, como puedo hacer para que en ejecucion pulsando un button pase a ser de barras por ejemplo.

Necesito saber en que propiedad se guarda ese dato.

Gracias y saludos
Responder Con Cita
  #2  
Antiguo 28-12-2003
Avatar de DarkByte
DarkByte DarkByte is offline
Miembro
 
Registrado: sep 2003
Ubicación: Desconocido
Posts: 1.322
Poder: 22
DarkByte Va por buen camino
Unhappy

He estado echando una ojeada. Me he queado antrancado en Chart1.Series.Style ... pues me parece que por ahí debe de estar eso. De todos modos no me eche mucha cuenta, mi nivel en Delphi no es muy bueno que digamos...

Siento no haberte podido ayudar
__________________
:)
Responder Con Cita
  #3  
Antiguo 09-01-2008
elorza elorza is offline
Miembro
 
Registrado: nov 2007
Posts: 41
Poder: 0
elorza Va por buen camino
Question

Hola, tengo el mismo problema. Lo que a mi me pasa es que no se de qué tipo definir una variable que sea válido para todos los tipos. Haber si se me entiende:

procedure ....
var una:TBarSeries;
begin
una:=TBarSeries.Create(Chart1);
Chart1.addseries(una);
...
end;

Pero hay alguna manera que esa variabel una sea de algún otro tipo y le pueda asignar el valor mediante un parámetro de entrada?

procedure ... (tipo:xxxxx)
var una: xxxx;
begin
una:=xxxx.Create(Chart1);
Chart1.addseries(una);
...
end;
¡Suponiendo que "tipo" es la variable que se le pasa en ejecución con valor por ejemplo de TLineSeries,TBarSeries,TAreaSeries,...
Yo necesito saber esta variable llamada "tipo" de que tipo tiene que ser (general para todos los tipos)!
Responder Con Cita
  #4  
Antiguo 09-01-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Podes tratar polimórficamente a las series partiendo de su clase base: TChartSeries

Acabo de hacer esto, que funcionó perfectamente:

Código Delphi [-]
function TForm1.CreaSerie(Clase: TChartSeriesClass): TChartSeries;
begin
  Result := Clase.Create(Chart1);
  Chart1.AddSeries(Result);
  Result.Add(random(50));
  Result.Add(random(50));
  Result.Add(random(50));
  Result.Add(random(50));
  Result.Add(random(50));
  Result.Add(random(50));
  Result.Add(random(50));
  Result.Add(random(50));
  Result.Add(random(50));
  Result.Add(random(50));
  Result.Add(random(50));
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  CreaSerie(TBarSeries);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  CreaSerie(TLineSeries);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  CreaSerie(THorizBarSeries);
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
  CreaSerie(THorizLineSeries);
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
  CreaSerie(TAreaSeries);
end;

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #5  
Antiguo 10-01-2008
elorza elorza is offline
Miembro
 
Registrado: nov 2007
Posts: 41
Poder: 0
elorza Va por buen camino
Smile

Muchas muchas muchas gracias!!!!!!!!!!!!!!!!!!!!
Responder Con Cita
  #6  
Antiguo 10-01-2008
elorza elorza is offline
Miembro
 
Registrado: nov 2007
Posts: 41
Poder: 0
elorza Va por buen camino
Question

Ahora tengo otra duda,

Primero visualizo la gráfica en tipo "TBarSeries" y a continuacion, lo convierto en "TAreaSeries". 2 duda:

1) ¿cómo le puedo indicar que el color de cada área sea diferente?

2) Al visualizar de tipo "TAreaSeries" se pierden los axis y los walls (lógico) pero luego al volver a visualizar de tipo "TBarSeries" esos axis y walls siguen desaparecido. Yo quiero que vuelvan a aparecer. Los axis ya lo he conseguido: Chart1.AxisVisible:=true; pero no encuentro el código para los walls.

¿Me podrías ayudar?

Gracias de antemano!
Responder Con Cita
  #7  
Antiguo 10-01-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 28
jachguate Va por buen camino
Cita:
Empezado por elorza Ver Mensaje
Muchas muchas muchas gracias!!!!!!!!!!!!!!!!!!!!
OOP + Delphi, amigo... esas emociones son constantes...
Cita:
Empezado por elorza Ver Mensaje
¿cómo le puedo indicar que el color de cada área sea diferente?
...
¿Me podrías ayudar?
Mirá las propiedades de los Items de la serie

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 18:10:40.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi