Asunto: Mostrar un gráfico en una aplicación con Delphi
¿Cómo puedo mostrar un gráfico en una aplicación que estoy realizando con Delphi? no necesito que sean datos de una tabla de una base de datos, es sufiente con que pueda ponerle los datos "manualmente".
¿Existe algún componente en Delphi para hacer gráficos o tengo que buscarlo e instalarlo?
Publicado:
Jue Ene 07, 2010 7:35 am
agustinbus Excelente usuario
Registrado: Apr 17, 2009 Mensajes: 38
Asunto: Re: Mostrar un gráfico en una aplicación con Delphi
Anuncios
alino escribió:
¿Cómo puedo mostrar un gráfico en una aplicación que estoy realizando con Delphi? no necesito que sean datos de una tabla de una base de datos, es sufiente con que pueda ponerle los datos "manualmente".
¿Existe algún componente en Delphi para hacer gráficos o tengo que buscarlo e instalarlo?
Claro que existe, podrias utilizar el componente TChart que se encuentra en la paleta TeeChart Std
Simplemente:
1- Colocas el componente TChart en el formulario
2- Entras a la ventana de edición, para ello haces doble click sobre el componente.
3- Una vez adentro de la ventana de edicion, vas a la pestaña series y le das a Add
4- Eliges el tipo de gráfica
5- Vas a la pestaña superior que dice Data. Te encontraras con una grilla con todos los datos del grafico, ahi podes editar los datos a gusto
Publicado:
Vie Ene 08, 2010 3:47 pm
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Mostrar un gráfico en una aplicación con Delphi
Anuncios
Efectivamente, como dice Agustinbus. Te comentamos que si quieres modificar los datos en tiempo de ejecución (desde el código fuente), puedes hacer lo siguiente:
Código:
...
var
serieA, serieB : TFastLineSeries;
begin
grafico.Title.Text.Add ('Prueba de gráfico de líneas');
grafico.LeftAxis.Title.Caption := 'Importe';
serieA := TFastLineSeries.Create(Self);
//Añadir primera serie (importe facturado por mes año 2009)
With serieA do
begin
ParentChart := grafico;
Title := 'Facturación 2009';
AddXY(1, StrToFloat(txtFactEnero2009.Text), 'Enero', clRed);
AddXY(2, StrToFloat(txtFactFebrero2009.Text), 'Febrero', clRed);
AddXY(3, StrToFloat(txtFactMarzo2009.Text), 'Marzo', clRed);
AddXY(4, StrToFloat(txtFactAbril2009.Text), 'Abril', clRed);
AddXY(5, StrToFloat(txtFactMayo2009.Text), 'Mayo', clRed);
AddXY(6, StrToFloat(txtFactJunio2009.Text), 'Junio', clRed);
AddXY(7, StrToFloat(txtFactJulio2009.Text), 'Julio', clRed);
AddXY(8, StrToFloat(txtFactAgosto2009.Text), 'Agosto', clRed);
end;
//Añadir segunda serie (importe facturado por mes año 2008)
serieB := TFastLineSeries.Create(Self);
With serieB do
begin
ParentChart := grafico;
Title := 'Facturación 2009';
AddXY(1, StrToFloat(txtFactEnero2008.Text), 'Enero', clBlue);
AddXY(2, StrToFloat(txtFacturacionFebrero2008.Text), 'Febrero', clBlue);
AddXY(3, StrToFloat(txtFactMarzo2008.Text), 'Marzo', clBlue);
AddXY(4, StrToFloat(txtFactAbril2008.Text), 'Abril', clBlue);
AddXY(5, StrToFloat(txtFactMayo2008.Text), 'Mayo', clBlue);
AddXY(6, StrToFloat(txtFactJunio2008.Text), 'Junio', clBlue);
AddXY(7, StrToFloat(txtFactJulio2008.Text), 'Julio', clBlue);
AddXY(8, StrToFloat(txtFactAgosto2008.Text), 'Agosto', clBlue);
end;
Para que funcione el código, como ha comentado Agustinbus, tienes que añadir un componente de tipo TChart que se encuentra en la pestaña "Additional" (en Delphi 6) y TeeChart Std en Delphi 7.
Y lógicamente necesitarás todos los TEdit con los nombres txtFact... En estos TEdit el usuario o algún cálculo de la aplicación colocaría un valor numérico en cada uno de ellos indicando, en el ejemplo, la facturación total por mes y año.
Para este caso concreo siempre será mejor utilizar un TDBChart que te permitirá enlace con base de datos, por lo que podrás coger el valor de las series de una tabla o consulta SQL.
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A