【发布时间】:2012-03-24 15:20:55
【问题描述】:
我一直在开发用于生成用于 FusionCharts 的 XML 数据的 Web 服务器。经过几天尝试在 Delphi 中提出标准化的对象结构来包装这些图表的 XML 产品,但没有成功,我决定看看是否有人已经这样做了。
我要做的是在 Delphi 中构建一个对象结构,它包含为 FusionCharts 生成 XML 数据所需的功能。有 42 种可能的图表类型,每一种都需要稍微不同的 XML 结构。我开始构建的对象结构简单地包含了指定此类图表之一的通用属性并基于这些属性动态生成 XML 数据的能力。当然,它还包括处理多个数据集,每个数据集用于图表中的不同系列。还有一些带有可能数据集组合的古怪图表,这是我在尝试实现这种结构时迷失的地方。
我很快意识到这是一项艰巨的任务,并且想看看是否有人已经做过这样的事情。我知道有一个 VCL 库可以在应用程序中显示 FusionCharts,但这不是我需要的。我只需要简单地生成要通过 Web 服务器传回 HTTP 客户端的 XML 数据。
这已经完成了吗?如果没有,那么有关如何完成此操作的任何提示或指示?我正准备制作一个名为 TFusionChart 的对象并将所有内容都包装在其中(使用 ChartType 属性),但是有 42 个可能的图表,这将是一团糟。我还可以创建 42 个不同的对象,每个图表一个,但这会有多余的代码。
PS - 我愿意为这个问题开始赏金,这很重要。
更新
为了稍微解释一下我的现有结构,我有一个名为TFusionChart 的基本组件。这个类包含所有图表共有的所有内容,包括类别名称、标题、背景等。实际的图表都不是基于此。在这堂课中,我有TFusionChart2D 和TFusionChart3D。然后我还有 4 个叫 TFusionChartSingle2D、TFusionChartMulti2D、TFusionChartSingle3D 和 TFusionChartMulti3D。从这 4 个类开始,我开始创建实际的图表组件。我计划为每个可用的图表创建一个组件。
我面临的问题是对如何管理要包含的数据感到困惑。一些图表可以有一个组合,例如:列中的多个系列、线系列和列中的堆叠数据。仅此一张图表就有一种非常独特的数据存储方式,这很难与其他类型的图表共享,例如简单的单系列柱形图。
我尝试了下面答案中描述的 XML 数据绑定功能,但这个解决方案过于庞大,我放弃了它。同样,因为有 42 种图表。每个图表意味着几千行代码。
【问题讨论】:
-
能否解释一下投票结束的原因?
-
你的意思是 Fusioncharts v3.2 吗?
标签: xml delphi fusioncharts