如何在同一页面上呈现多个 AmCharts(版本 3)系列图表?

How to render multiple AmCharts (version 3) Serial chart on same page?

我需要一个包含多个图表的页面(呈现同一数据集的多个方面)。

这里是问题代码http://jsfiddle.net/mZ2Gq/227/

var chart1 = AmCharts.makeChart("chart1div", $.extend(true, AMCHART_SERIAL_CONFIG, { "theme": "dark" }) );
var chart2 = AmCharts.makeChart("chart2div", $.extend(true, AMCHART_SERIAL_CONFIG, { "theme": "light" }) );

只能正确渲染最后一张图表。我该如何解决这个问题?

问题是您对两个图表使用了相同的配置对象。这不起作用。

您可以通过在 $.extend 方法中使用空对象 {} 作为目标来解决此问题。 就像这样:

AmCharts.makeChart("chart", $.extend(true, {}, AMCHART_SERIAL_CONFIG, {theme: "dark"}));

这是您的更新 fiddle

注意:如无必要,应避免使用深度合并。它会减慢您的代码速度。