使用两个或多个数据源在同一个图表上渲染多个 fusioncharts 图

Render multiple fusioncharts plots on the same chart using two or more data sources

一整天都在用头撞墙,我希望能尝试寻求一些帮助。

我正在尝试使用 fusioncharts 在同一张图表上呈现多个时间序列图。

示例https://www.fusioncharts.com/fusiontime/examples/plotting-multiple-series-on-time-axis

我面临的问题是示例代码使用了一个数据源,该数据源为单个数组中的两个图提供了所需的数据,但是,我的要求是从两个不同的端点(下面的示例)寻找数据。

/api/price

[{"date":"1-Jul-21","price":10.04},{"date":"2-Jul-21","price":9.50},{"date":"3-Jul-21","price":18.25}]

/api/stats

[{"date":"1-Jul-21","stats":195},{"date":"2-Jul-21","stats":2046},{"date":"3-Jul-21","stats":1021}]

架构:

[{"name":"date","type":"date","format":"%d-%b-%y"},{"name":"price","type":"number"},{"name":"stats","type":"number"}]

非常感谢任何帮助或建议,谢谢。

PS:Fusioncharts 使用 createDataTable 需要两个参数,一个数据对象和一个方案对象。我最初的想法是类似这样的 createDataTable(data1, data2, schema) 但它似乎是不可能的,我需要一种解决方法或确保传递给 createDataTable 的数据在 createDataTable 被调用..

createDataTable 方法有两个参数,一个是数据,另一个是模式,因为您想显示同一日期的多个系列,假设您的数据来自两个 API 端点,您可以合并这两个对象合并到一个数据数组中,例如,根据您上面共享的数据,它将如下所示

let schema = [{"name":"date","type":"date","format":"%d-%b-%y"},{"name":"price","type":"number"},{"name":"stats","type":"number"}]

let data = [["1-Jul-21",10.04, 195]]

其中 1-Ju-21 表示日期,10.04 是价格值,195 是统计值

这是一个类似的演示:https://jsfiddle.net/px6fbj3L/