D3JS数据加载和更新

时间:2016-07-26 03:36:51

标签: javascript csv d3.js

我正在使用D3JS库来加载名为“data.csv”的CSV数据。通过单击按钮,我在控制台上输出数据长度。 我的问题是,如果我在按钮上的两个操作之间更改“data.csv”内的数据,则数据将不会更新。

例如,我有一个包含100个数据的CSV和另一个包含200个数据的CSV。首先我将100个数据CSV放在我的文件夹中并按“读取”按钮,我可以在控制台上查看数据长度,它是预期“数据长度= 100”。之后,我用200个数据覆盖CSV文件并再次按下按钮,控制台仍然显示相同的数据长度(100),我的数据变量尚未使用新文件中的新数据进行更新。

如何解决数据更新问题?

HTML

<button onclick="read_data()">Read</button>

的JavaScript

function read_data(){
    Plotly.d3.csv("data.csv", function(error, data) {
        console.log("Data length = " + data.length)
    })
}

1 个答案:

答案 0 :(得分:1)

就像Andrew指出浏览器可能正在缓存文件一样。也许您可以添加查询参数,例如:

function read_data(){
     Plotly.d3.csv("data.csv?”+(new Date()).getTime(), function(error, data) {
         console.log("Data length = " + data.length)
 })}