总体问题:我在不同的 JSON 文件中有逐年数据。对于每个 JSON 文件,我生成了 3 个显示在网页上的图表。现在用户应该能够选择不同的年份,并且图表应该根据该特定年份的数据进行更新。
我所做的:我编写了一个名为 initialize_charts() 的函数,它解析给定的 JSON,根据谷歌图表要求准备数据并绘制这些图表。我从 google.setOnLoadCallback 调用这个函数。(到目前为止,我已经硬编码了 json 文件名)。
主要问题:现在,我不确定当用户选择其他年份的 JSON 文件时如何重新渲染图表?不知何故,我应该能够将文件名参数传递给 google.setOnLoadCallback 或 google.load,以便我的 initialize_chart 读取这些新数据并重新呈现图表。但我不确定如何。
我尝试了什么:我尝试编写一个名为 initialize 的包装函数,如下所示:
google.setOnLoadCallback(initialize);
function initialize()
{
initialize_charts("year1.json");
}
因此,当它首先加载时,它会加载 year1.json 数据。然后对于 onclick 事件,我调用了 onclick="initialize_charts("year2.json")。但这不起作用。我想图表的占位符(div 元素)被图表本身替换。所以,它不能找到那些占位符。
我将不胜感激任何形式的帮助。如果您需要更多信息或我的代码,我很乐意提供。从过去的两天开始,我一直坚持这一点:-(