TChart création nouvelle série

Messages postés
249
Date d'inscription
lundi 9 novembre 2009
Dernière intervention
6 mai 2018
- 31 oct. 2016 à 21:00 - Dernière réponse :
Messages postés
4229
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
3 août 2018
- 1 nov. 2016 à 20:48
Bonjour,
Je souhaite créer un nombre de séries au runtime en fonction des besoins.
Au démarrage j'ai une série et j'ajoute le nombre de série nécessaire à l'aide de cette méthode:
Chart_congels.AddSeries(TPointSeries.Create(self));

malheureusement la série génère le même type de courbe mais les points ont alors la taille par défaut et pas la même taille que la première série :-/

J'ai lors essayé de générer la nouvelle série en clonant la première:
Chart_frigos.AddSeries(CloneChartSeries(Chart_frigos.Series[0]));

cette fois la taille des points est ok mais la couleur est identique à la première série ainsi que son nom :-(
Je n'arrive pas ensuite à assigner une couleur aléatoire (mais différentes de celles déjà utilisées) ni à nommer cette série dynamiquement...


Qui peut m'aider sur ce coup???

Merci pour vos suggestions ;-)
PhilLu
Afficher la suite 

Votre réponse

2 réponses

Messages postés
159
Date d'inscription
samedi 15 novembre 2003
Dernière intervention
1 août 2018
- Modifié par NHenry le 1/11/2016 à 18:58
0
Merci
salut
est ce que tu cherche quelque chose comme ça
procedure TForm2.Button1Click(Sender: TObject);
var
  LineSeries: TLineSeries;
begin
  Chart1.Parent := Self;
  LineSeries    := TLineSeries.Create(Chart1);
  Chart1.AddSeries(LineSeries);

//  LineSeries.Color := clRed;
  LineSeries.SeriesColor := clBlue;

  LineSeries.Add(5,'Titi',clred);
  LineSeries.Add(10,'Toto',clBlue);

 // LineSeries.FillSampleValues(20);

end;


papyvore
Commenter la réponse de papyvore
Messages postés
4229
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
3 août 2018
- 1 nov. 2016 à 20:48
0
Merci
Salut,

avec ce bout de code je clone les séries de Chart1 vers Chart2
et au passage je change la couleur et le titre ...
procedure TChartDemoMainForm.Button2Click(Sender: TObject);
var
  aLS: TChartSeries;
  I: Integer;
begin
  aLS := TChartSeries.Create(Chart2);
  Chart2.SeriesList.Clear;
  for I := 0 to Chart1.SeriesCount-1 do
    begin
      aLS := CloneChartSeries(Chart1.Series[I]);
      aLS.SeriesColor := RandomRange(255, $ffffff);
      aLS.Title := IntToStr(I+1) + ' Toto';
      Chart2.AddSeries(aLS);
    end;
end;
tout comme papyvore je ne sais pas si j'ai bien compris ta demande
mais peut être que ça t'aidera ;)
Commenter la réponse de Cirec

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.