堆叠图未按日期堆叠成单个条形图

Stacked Chart not stacking into a single bar by date

我有一个数据集,其中 returns 数据如下

日期、地区、销售额

2017-06-01 00:00:00.000食堂435.29

2017-06-01 00:00:00.000 健身房 26

2017-06-01 00:00:00.000钉75

2017-06-01 00:00:00.000 未分类 482.5

我正在尝试使用此数据创建堆积条形图

系列数会有所不同

我有以下创建系列的逻辑,但我不确定如何添加每个值,例如我需要 X 轴按日期显示并且有 2 个柱。然后根据上述数据,每个条形图堆叠 3 个系列。

while not tblSalesBreakdownByDate.Eof do
begin
  nIndex := objList.IndexOf(tblSalesBreakdownByDateCategory.AsString);
  if nIndex = -1  then
  begin
    objSeries := TBarSeries.Create(Self);
    objSeries.MultiBar := TMultiBar.mbStacked;
    objSeries.Title := tblSalesBreakdownByDateCategory.AsString;

    chrtBreakdownByDate.AddSeries(objSeries);
    objList.AddObject(objSeries.Title, objSeries)
  end
  else
    objSeries := objList.Objects[nIndex];

  objSeries.Add(tblSalesBreakdownByDateTotalSales.AsFloat, tblSalesBreakdownByDateTransactionDate.AsString);

  tblSalesBreakdownByDate.Next;
end;

渲染时,我得到的不是堆叠的 1 个条,而是 3 个条

如何在 1 个栏中为日期堆叠这个?

Axis 有什么特别需要我做的吗?

干杯

保罗

这给了我一个堆叠的列:

uses Series;

procedure TForm1.FormCreate(Sender: TObject);
begin
  with Chart1.AddSeries(TBarSeries) as TBarSeries do
  begin
    MultiBar:=mbStacked;
    Marks.Hide;
    Title:='Canteen';
    Add(435, '2017-06-01');
  end;
  with Chart1.AddSeries(TBarSeries) as TBarSeries do
  begin
    MultiBar:=mbStacked;
    Marks.Hide;
    Title:='Gym';
    Add(25, '2017-06-01');
  end;
  with Chart1.AddSeries(TBarSeries) as TBarSeries do
  begin
    MultiBar:=mbStacked;
    Marks.Hide;
    Title:='Nails';
    Add(95, '2017-06-01');
  end;
  with Chart1.AddSeries(TBarSeries) as TBarSeries do
  begin
    MultiBar:=mbStacked;
    Marks.Hide;
    Title:='Uncategorized';
    Add(455, '2017-06-01');
  end;
end;