Color
特定の を定義するにはどうすればよいXLabel[i]
ですか?
このような、
Chart1.Series[0].XLabel[idxMP].FONT.Color := clBLue;
しかし、これは機能しません。
私は Delphi 7 と Teechart 7.12 を持っています
どうもありがとう!しかし、この行だけが正しいです: (フォーマットなし)
Chart1.Axes.Bottom.Items.Add(Chart1[0].XValue[i], Chart1[0].Labels[i]).Font.Color:=myColor;
しかし、それは今ではうまくいきます!ありがとう
次の 2 つのオプションがあります。
最初のものは標準ラベルを使用しており、次のように行う必要があります。
procedure TForm1.FormCreate(Sender: TObject);
begin
Series1.FillSampleValues(20);
Series2.FillSampleValues(20);
Chart1.BottomAxis.OnDrawLabel := DrawBottomAxis;
end;
procedure TForm1.DrawBottomAxis(Sender:TChartAxis; var X,Y,Z:Integer; var Text:String;
var DrawLabel:Boolean);
var
lValue: Integer;
begin
lValue := StrToIntDef(Text, -1);
if lValue < 0 then
Sender.LabelsFont.Color := clRed
else
if ((lValue mod 2) = 1) then
Sender.LabelsFont.Color := clGreen
else
Sender.LabelsFont.Color := clYellow;
end;
2 つ目は、次のコード スニペットのようにカスタム ラベルを使用することです。
procedure TForm1.FormCreate(Sender: TObject);
var i: Integer;
dt: TDateTime;
myColor: TColor;
begin
Chart1.AddSeries(TLineSeries.Create(Self));
for i:=0 to 10 do
begin
dt:=Now + i;
Chart1[0].AddXY(dt, random, DateToStr(dt));
end;
Chart1.Axes.Bottom.Items.Clear;
for i:=0 to Chart1[0].Count-1 do
begin
if i mod 2 <> 0 then
myColor:=clRed
else
myColor:=clBlack;
Chart1.Axes.Bottom.Items.Add(Chart1[0].XValue[i], Chart1[0].Labels[i]).Format.Font.Color:=myColor;
end;
Chart1.Axes.Bottom.LabelsAngle:=90;
end;