0

我有一个DBChart带四个PieSeries的。每个图表都有多个切片,并且是多色的。我希望每个系列的标题都写在它上面或下面,而不是传说。有什么简单的方法可以做到这一点吗?我正在使用 TeeChart Standard v2011.03.32815 VCL

4

1 回答 1

1

专业版包括在这里有用的注释工具。

使用标准版,您可能只有 4 个 TDBCharts,如上面评论中所述,或者您也可以在画布上手动绘制文本。IE:

procedure TForm1.FormCreate(Sender: TObject);
var i: Integer;
begin
  for i:=0 to 3 do
    with Chart1.AddSeries(TPieSeries) as TPieSeries do
    begin
      FillSampleValues;
    end;
end;

procedure TForm1.Chart1AfterDraw(Sender: TObject);
var i, tmpX, tmpY: Integer;
    tmpStr1, tmpStr2: string;
begin
  tmpStr1:='My Pie nº';

  for i:=0 to Chart1.SeriesCount-1 do
  begin
    tmpStr2:=tmpStr1+IntToStr(i+1);
    with (Chart1[i] as TPieSeries), Chart1.Canvas do
    begin
      tmpX:=CircleXCenter-(TextWidth(tmpStr2) div 2);
      if (i<2) then
        tmpY:=CircleRect.Top-20
      else
        tmpY:=CircleRect.Bottom+10;

      TextOut(tmpX, tmpY, tmpStr2);
    end;
  end;
end;
于 2012-09-27T07:26:11.010 回答