Javascript amCharts4:相关交互后折叠的图表变为空白

Javascript amCharts4:相关交互后折叠的图表变为空白,javascript,amcharts,amcharts4,Javascript,Amcharts,Amcharts4,我一页有六个图表,三个量规和三个XY图表。 3个仪表图表始终可见,而XY图表在默认情况下是折叠的 在页面加载时,所有图表都正确绘制,无论它们是否折叠。但如果我刷新所有图表,例如在更改日期选择器值后,所有折叠的图表都将变为白色 我怎样才能避免这种情况?是否有命令使图表大小无效,或者在调整div大小时重新绘制图表大小 编辑: 我能够在选项卡上重现类似的行为:在页面加载时,所有选项卡都正确显示,但如果我单击刷新按钮重新绘制图表,当前不可见的选项卡将变为空白 您可以在这里查看: 多谢各位 Giulia如

我一页有六个图表,三个量规和三个XY图表。 3个仪表图表始终可见,而XY图表在默认情况下是折叠的

在页面加载时,所有图表都正确绘制,无论它们是否折叠。但如果我刷新所有图表,例如在更改日期选择器值后,所有折叠的图表都将变为白色

我怎样才能避免这种情况?是否有命令使图表大小无效,或者在调整div大小时重新绘制图表大小

编辑:

我能够在选项卡上重现类似的行为:在页面加载时,所有选项卡都正确显示,但如果我单击刷新按钮重新绘制图表,当前不可见的选项卡将变为空白

您可以在这里查看:

多谢各位

Giulia

如果你想重新实例化图表,你需要查看图表

chart.dispose();
检查更新的示例:

如果要重新实例化图表,则需要查看图表

chart.dispose();

检查更新的示例:

您可以发布代码吗?日期选择器是您自己创建的吗?不是,它是日期范围选择器:。代码有点长,我不会将其粘贴到这里,不管怎样,步骤是:在datepicker选择更改时,调用函数date_changed(),该函数调用函数列表,例如loadPerformanceRatio(..),它通过ajax调用获取要在图表上绘制的值。@Giuly-代码会非常有用。因此建议提供;复制一个简化版的设置将有助于了解您是如何更新/绘制所有内容的。我刚刚添加了一个不同但类似情况的示例。您可以发布代码吗?日期选择器是您自己创建的吗?不是,它是日期范围选择器:。代码有点长,我不会将其粘贴到这里,不管怎样,步骤是:在datepicker选择更改时,调用函数date_changed(),该函数调用函数列表,例如loadPerformanceRatio(..),它通过ajax调用获取要在图表上绘制的值。@Giuly-代码会非常有用。因此建议提供;复制一个简化版的设置将有助于了解您是如何更新/绘制所有内容的。我刚刚添加了一个不同但类似情况的示例。我发现我试图在同一容器中创建一个新图表,而不是在现有容器中创建一个新图表。这样做是不对的。旧的SVG被覆盖,但所有变量、事件处理程序、帮助器元素都保留了下来,很可能会导致各种问题。正如您所说,要覆盖图表,我必须首先对其对象调用dispose()。更好的是,如果有人只需要更新图表的数据,您可以重用相同的对象,只需设置它们的数据属性。我发现我试图在同一容器中创建一个新图表,而不是现有的图表。这样做是不对的。旧的SVG被覆盖,但所有变量、事件处理程序、帮助器元素都保留了下来,很可能会导致各种问题。正如您所说,要覆盖图表,我必须首先对其对象调用dispose()。更好的是,如果有人只需要更新图表的数据,您可以重用相同的对象,只需设置它们的数据属性。