Danke wp_xyz, das hat geholfen. Ich muss natürlich in der Schleife jeweils ein neues TLineSeries.Create(Chart1) "erzeugen".
Und mit dem
Code: Alles auswählen
TLineSeries(Chart.Series[AIndex]).SeriesColor := AColor;
kann ich die Eigenschaften nachträglich ändern.
Unten ein "sinnfreies" Minimalbeispiel, bei dem 10 Zufallskurven mit Linienfarbe schwarz bis rot erzeugt werden, die dann bei Knopfdruck schwarz bis grün eingefärbt werden.
Code: Alles auswählen
unit Test_Chart_unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, TAGraph, TASeries, Forms, Controls, Graphics,
Dialogs, StdCtrls;
type
{ TForm1 }
TForm1 = class(TForm)
Button1: TButton;
Chart1: TChart;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
i,x: integer;
Line: TLineSeries;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.FormCreate(Sender: TObject);
begin
for i:= 1 to 10 do
begin
Line:= TLineSeries.Create(Chart1);
for x:= 0 to 50 do Line.AddXY(x,Random+i);
Line.SeriesColor:= TColor(i*25);
Chart1.AddSeries(Line);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
for i:= 1 to 10 do
begin
TLineSeries(Chart1.Series[i-1]).SeriesColor:= TColor(i*25*256);
end;
end;
end.