【问题标题】:Is it possible to draw TeeChart PieSeries titles on the pies instead of the legend?是否可以在饼图上绘制 TeeChart PieSeries 标题而不是图例?
【发布时间】:2012-09-26 12:42:28
【问题描述】:

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

【问题讨论】:

  • 似乎在 TChart 中没有简单的方法。我的建议是让 4 个 TDBCharts nicley 与每个中只有一个 PieSeries 对齐。
  • TeeChart官方支持人员监控本站,可能有更好的答案,但不知道怎么弄。

标签: delphi teechart


【解决方案1】:

专业版包括注释工具,在此处很有用。

使用标准版,您可以只拥有上面评论中提到的 4 个 TDBCharts,或者您也可以在画布上手动绘制文本。即:

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;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-05
    • 2017-09-07
    • 1970-01-01
    • 2010-10-05
    • 2018-08-29
    • 1970-01-01
    • 1970-01-01
    • 2021-12-13
    相关资源
    最近更新 更多