gpt4 book ai didi

delphi - 在运行时创建系列时,系列未显示在 TeeChart 中?

转载 作者:行者123 更新时间:2023-12-03 15:53:49 25 4
gpt4 key购买 nike

我有一个数据集,它返回如下数据

日期、区域、销售

2017年1月1日,食堂,1000
2017年1月1日,健身房,3000
2017年1月1日,沙龙,2000年
2017年2月1日,食堂,5000
2017年2月1日,健身房,6000
2017年2月1日,沙龙,7000

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

系列数会有所不同

我有以下逻辑来创建该系列,但我不确定如何添加每个值,例如我需要 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.SeriesList.Add(objSeries);
objList.AddObject(objSeries.Title, objSeries)
end
else
objSeries := objList.Objects[nIndex];

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

tblSalesBreakdownByDate.Next;
end;

当我运行这个程序时,虽然它没有崩溃,但我没有看到我添加的任何系列?

谁能看出问题所在吗?

有没有简单的方法可以做到这一点?

理想情况下,我更愿意使用数据库图表,但考虑到数据不是静态的,我不确定该怎么做?

干杯

保罗

最佳答案

而不是:

chrtBreakdownByDate.SeriesList.Add(objSeries);

调用AddSeries方法:

chrtBreakdownByDate.AddSeries(objSeries);

或者没有任何附加方法调用设置 ParentChart到该系列:

objSeries.ParentChart := chrtBreakdownByDate;

SeriesList collection 不会监听集合更改,因此该系列未添加到图表中。有关如何在运行时添加系列的示例,您可以在 TChart 上找到。引用页面。

关于delphi - 在运行时创建系列时,系列未显示在 TeeChart 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45382417/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com