• Viernes 3 de Mayo de 2024, 08:19

Autor Tema:  Chart O Gráfico De Torta  (Leído 4268 veces)

jojobax_

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
Chart O Gráfico De Torta
« en: Miércoles 21 de Mayo de 2008, 16:06 »
0
Hola amigos nuevamente estoy con unas preguntitas:

estuve viendo el tipo TChart pero es complicadisimo...

1 -como puedo colocar un grafico de tipo torta en mi proyecto, solo con dos tipos de datos y que se vea un titulo y los labels de cada tipo con su porcentaje?

2- se podria dar la opcion al usuario de cambiar los colores del grafico o pasar a un grafico de barras con los mismos datos?

gracias de nuevo, espero sus respuestas

el_shanky

  • Miembro MUY activo
  • ***
  • Mensajes: 177
    • Ver Perfil
Re: Chart O Gráfico De Torta
« Respuesta #1 en: Viernes 30 de Mayo de 2008, 03:58 »
0
Hola man! stuve desaparecido x que ahora mismo ando ocupado aprendiendo otros lenguajes x eso no pasaba x el foro... Igual gracias x tenerme en cuenta x el mesaje privado.

Con respecto a tu problema para serte honesto nunca habia necesitado hacer gráficos de tortas en mis programas pero ya que es algo nuevo para aprender ( siempre hay que star dispuesto, no ser soberbio ni tampoco hay que cerrarse en lo que uno sabe no +!) me puse a toquetear el objeto Chart...

X lo que veo es potente y averiguando encontré que es código ajeno a Borland, es decir es de otra empresa donde borland le compra los derechos de las VCL (librerias)... LLamadas TeeChart Pro...

N fin amigo, para ponerte a empezar a usarlas vas a tener que leerte esto:

http://www.steema.com/products/teechart/ge...teechart_pr.htm

Ya con eso te vas a encaminar como trompada espero!

Salu2 y despues me contas...

PD: x el pantallaso que le heché a esa página el código que tiene es de delphi, pero seguro que encontras las mismas
"La programación hoy en día es una carrera entre los ingenieros de software intentado construir mejores y más eficientes programas a prueba de idiotas y el Universo intentando producir mejores y más grandes idiotas. De lejos, el Universo está ganando." - Rich Cook



http://www.maxcode.com.ar

http://www.shanky.com.ar

Linspire

  • Miembro MUY activo
  • ***
  • Mensajes: 232
    • Ver Perfil
    • http://www.cedrela.com.mx
Re: Chart O Gráfico De Torta
« Respuesta #2 en: Viernes 30 de Mayo de 2008, 08:47 »
0
De hecho en la ayuda de Builder hay un artículo muy completo sobre este componente y aunque es un poco deficiente si lo lees con atención te servirá de mucho, yo estuve buscando información sobre lo mismo hace tiempo pero encontré muy poco, por lo tanto tuve que ponerme a pensar un poco.
Código: Text
  1.  
  2.  String sql,elemento="Aserraderos",nelemento,coef,fecha,ctotal,cprom;
  3.           double coeficiente,suma=0,promedio,poblacion;
  4.          // TColor color_inicial=clNavy;
  5.  
  6.           TColor colores[8]={clInactiveCaption,clBlue,clGreen,clMaroon,clOlive,clFuchsia,clLime};
  7.  
  8.           int i,n,aleatorio;
  9.           sql="SELECT Elemento, Cantidad FROM configuracion WHERE ELEMENTO LIKE '"+elemento+"'";
  10.           Query1->SQL->Clear();
  11.           Query1->SQL->Add(sql);
  12.           Query1->Open();
  13.           n=Query1->FieldByName("Cantidad")->AsInteger;
  14.           Query1->Close();
  15.           StringGrid2->RowCount=n+1;
  16.           fecha=StringGrid1->Cells[StringGrid1->Col][StringGrid1->Row];
  17.           StringGrid2->Font->Color=clMaroon;
  18.           poblacion=n;
  19.  
  20.           Chart1->Series[0]->Clear();
  21.          // Chart1->Series[0]->AddXY(1,25,"One",clBlue);
  22.  
  23.  
  24.           for(i=1;i<n+1;i++)
  25.           {
  26.                nelemento=i;
  27.  
  28.                sql="SELECT Coeficiente FROM coeficientes WHERE Fecha LIKE '"+fecha+"' AND Aserradero="+nelemento;
  29.                Query1->Close();
  30.                Query1->SQL->Clear();
  31.                Query1->SQL->Add(sql);
  32.                Query1->Open();
  33.                if(!Query1->IsEmpty())
  34.                {
  35.                     coeficiente=Query1->FieldByName("Coeficiente")->AsFloat;
  36.                     if(coeficiente==0)
  37.                          coef="";
  38.                     else
  39.                          coef=FormatFloat("0.00",coeficiente)+'%';
  40.                }
  41.                else
  42.                {
  43.                     coeficiente=0;
  44.                     coef="";
  45.                }
  46.  
  47.                suma+=coeficiente;
  48.                ctotal=suma;
  49.                StringGrid2->Cells[0][i]=nelemento;
  50.                StringGrid2->Cells[1][i]=coef;
  51.  
  52.                aleatorio=rand()%7;
  53.  
  54.                Chart1->Series[0]->AddXY(i,coeficiente,i,colores[aleatorio]);
  55.           }
  56.           promedio=suma/poblacion;
  57.           cprom=promedio;
  58.  
  59.  

Lo anterior es un fragmento de código que usé alguna vez, no es la gran cosa pero puede ayudarte, lo que a mi se me hizo más dificil fue entender las propiedades de ese componente ya que son cientos y me parecieron algo confusos.

Suerte!. :D
[size=109]My Blog de Programación[/i][/b][/size]
´


[size=109]Tan solo quiero pensar que todo es un sueño y que no quiero despertar
porque quiero controlarlo como yo quiera.
[/size]

Todo es posible, lo imposible solo cuesta un poco más. Dan Drown.

jojobax_

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
Re: Chart O Gráfico De Torta
« Respuesta #3 en: Lunes 2 de Junio de 2008, 02:25 »
0
Problema solucionado, ya descubri una forma facil de hacerlo...

el_shanky

  • Miembro MUY activo
  • ***
  • Mensajes: 177
    • Ver Perfil
Re: Chart O Gráfico De Torta
« Respuesta #4 en: Lunes 2 de Junio de 2008, 07:18 »
0
jajaja que bueno skuchar eso, pero... como que podrias poner la solucion que le diste así nos queda como referencia futura!

Desde ya gracias
"La programación hoy en día es una carrera entre los ingenieros de software intentado construir mejores y más eficientes programas a prueba de idiotas y el Universo intentando producir mejores y más grandes idiotas. De lejos, el Universo está ganando." - Rich Cook



http://www.maxcode.com.ar

http://www.shanky.com.ar

jojobax_

  • Miembro activo
  • **
  • Mensajes: 44
    • Ver Perfil
Re: Chart O Gráfico De Torta
« Respuesta #5 en: Lunes 2 de Junio de 2008, 19:40 »
0
si, perdón...

La solución (parcial pero más importante) a mi problema era poder calcular las cantidades de los artículos que hay en mi Chart y pasar esas cantidades en tiempo de ejecución, lo solucioné con una función llamada AddPie (es para gráficos de tipo torta), algo así:

Series1 -> AddPie ( 53, "Tipo 1", clBlue );
.
.
.
Seriesx -> AddPie ( n , "Tipox", clColor );

Donde x=número de serie
          n=cantidad del artículo
          clColor=color, ej. clRed, clBlack, etc.

espero le sirva a alguien

Lo que todavía tengo que averiguar es como pasar de un gráfico de tipo torta a uno de barras o puntos al hacer clic en un botón.