0

私はそれDBChartに 4 つを持っPieSeriesています。各チャートには複数のスライスがあり、色とりどりです。凡例の代わりに、各シリーズのタイトルを上か下に書いてもらいたいです。これを達成する簡単な方法はありますか?TeeChart Standard v2011.03.32815 VCL を使用しています

4

1 に答える 1

1

Pro バージョンには、ここで役立つ注釈ツールが含まれています。

標準バージョンでは、上記のコメントで述べたように 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;
于 2012-09-27T07:26:11.010 に答える