Steema TeeChart单杠系列。如何使用Stacked100?

时间:2018-10-12 07:51:29

标签: delphi vcl

我希望以单杠显示一系列堆叠的值。我可以显示堆叠在一起的值以及它们各自的值,但我无法将它们显示为mbStacked100(这样的值占据了图形宽度的100%),我在系列中有几个值,每个值都有对应的颜色。

此代码可用于添加各个值,但我无法成功使用mbStacked100将系列显示为百分比而不是各个值。

procedure TForm4.Button1Click(Sender: TObject);
var
Rnd : Integer;
i : Integer;
j : Integer;
MyColour : TColor;
HSeries : array of THorizBarSeries; {added here to clarify}
begin
{attempt to add a data set to the bar chart}
SetLength(HSeries, 0);
Chart1.RemoveAllSeries;
Chart1.LeftAxis.Items.Clear;
series1.StackGroup := 0;
Chart1.LeftAxis.Items.Clear;
Chart1.LeftAxis.Items.Count := 0;
Chart1.Pages.MaxPointsPerPage := 16; 
SetLength(HSeries, 150);
for i := 0 to 150 do
  begin
  HSeries[i] := THorizBarSeries.Create(Chart1);
  Hseries[i].MultiBar := mbNone;

//  case RG1.ItemIndex of
//    0 : Hseries[i].MultiBar := mbNone;
//    1 : Hseries[i].MultiBar := mbStacked100;
//  end;

  HSeries[i].StackGroup := i;
  HSeries[i].Marks.Visible := False;
  HSeries[i].BarWidthPercent := 90;
  MyColour := clGreen;
  Rnd := Random(45);
  Rnd := 45 + Rnd;
  HSeries[i].AddX(Rnd, '', MyColour);
  Hseries[i].MultiBar := mbSelfStack; {prepare for multi-stack}

  Chart1.LeftAxis.Items.Add(i);
  Chart1.LeftAxis.Items.Item[i].Text:= IntToStr(151-i)+' GT:'+IntToStr(Rnd);  

  {draw the yellow and red}
  for j := 2 to 3 do
    begin
    if j = 2 then myColour := clYellow
    else MyColour := clRed;
    HSeries[i].AddX(j*2, '', MyColour);
    end;

  Chart1.AddSeries(HSeries[i]);

  end; {for i}

end;
{________________________________________________________________________}    

我尝试了多种使用mbStacked100的方法,以便将图像显示为100%,但没有一个成功。 上面的代码产生了这一点: Horizontal Stacked bars

我在Steema网站和文档中找不到任何可用的示例代码。 感谢您的协助。

0 个答案:

没有答案