Italian community of Lazarus and Free Pascal

Programmazione => Graphics => Topic aperto da: bonmario - Marzo 12, 2021, 07:56:27 pm

Titolo: Primi passi con TAChart
Inserito da: bonmario - Marzo 12, 2021, 07:56:27 pm
Ciao,
devo disegnare un grafico avente sull'asse Y dei numeri, e sull'asse X delle date.
Praticamente voglio vedere l'evoluzione di un dato numerico nel tempo.

Non avevo mai usato TAChart prima.
Il codice che ho usato è questo:
Codice: [Seleziona]
  //Ora posso disegnare il grafico e la legenda !!!!
  Chart1.Foot.Text.Clear;
  for IdxRiga:=TabellaEsiti.FixedCols + 1 to TabellaEsiti.ColCount - 1 do begin
    WrkVal:=ConvertiIntDaTab(TabellaEsiti.Cells[CstColIncrPosv, IdxRiga]);
    Chart1LineSeries1.Add(WrkVal, TabellaEsiti.Cells[CstColData, IdxRiga]);
  end;

Ho però 2 problemi:
- mentre sull'asse Y mi mette i valori numerici che mi aspettavo, non sono riuscito in nessun modo ad emettere le date sull'asse X. Praticamente, mi fa vedere numeri con scarto di 0.5 (0.5, 1, 1.5, 2, ecc)
- se emetto i valori di una ventina di date, le vedo tutte nel grafico. Se raddoppio, e cerco di emettere 40 date, le ultime "le perdo", e non vengono visualizzate.

Mi sapete dire come risolvere?

Grazie, Mario
Titolo: Re:Primi passi con TAChart
Inserito da: Stilgar - Marzo 12, 2021, 09:42:20 pm
Ciao

https://wiki.freepascal.org/TAChart_documentation#Axis_transformations

Ho visto che hanno una serie di opzioni già pronte.
Magri stai caricando un Dataset non corretto per quello che vuoi fare
https://wiki.freepascal.org/TAChart_documentation#Date-time_interval_source
La butto lì.
Stilgar
Titolo: Re:Primi passi con TAChart
Inserito da: bonmario - Marzo 13, 2021, 05:52:43 pm
Ok, grazie, vedo se riesco a tirarne fuori mqualcosa

Ciao, Mario
Titolo: Re:Primi passi con TAChart
Inserito da: bonmario - Marzo 13, 2021, 07:30:46 pm
Segnalo anche questo, che sembra spiegare parte di ciò che mi serve:
https://wiki.freepascal.org/TAChart_Tutorial:_ListChartSource,_Logarithmic_Axis,_Fitting

Ciao, Mario