我正在使用TChart标准版本8,并尝试查找实际的TChartAxis.Increment值。从文档:“轴增量是轴标签之间的最小步骤......如果没有足够的空间用于所有标签,TChart将计算更大的标签”。 我的问题是找到适当的MinorTickCount值,或者更确切地说是将它与实际的Increment进行协调。例如,如果增量为5,则默认的MinorTicks值(3)看起来很奇怪(在这种情况下,有5个次要刻度更自然)。 感谢。
例如,我将Increment设置为1,将MinorTickCount设置为0,但TChart将增量增加到5.如果我知道,我会将MinorTickCount设置为4.
答案 0 :(得分:1)
您可以使用 CalcIncrement 方法实现此目的,例如:
uses Series;
procedure TForm1.FormCreate(Sender: TObject);
begin
Chart1.Align:=alClient;
Chart1.AddSeries(TLineSeries).FillSampleValues();
TrackBar1.Max:=10;
TrackBar1.Position:=2;
end;
procedure TForm1.Chart1AfterDraw(Sender: TObject);
var tmpIncr: Double;
begin
tmpIncr:=Chart1.Axes.Bottom.CalcIncrement;
if Chart1.Axes.Bottom.MinorTickCount<>tmpIncr-1 then
begin
Chart1.Axes.Bottom.MinorTickCount:=Trunc(tmpIncr-1);
Chart1.Draw;
end;
end;
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
Chart1.Axes.Bottom.Increment:=TrackBar1.Position;
Label1.Caption:='Bottom Axis Increment: ' + IntToStr(TrackBar1.Position);
end;