"data.csv"という名前のCSVデータをロードするためにD3JSライブラリを使用しています。ボタンをクリックすると、コンソールにデータの長さが出力されます。 私の問題は、ボタンの2つのアクション間で "data.csv"内のデータを変更すると、データが更新されないということです。D3JSデータのロードと更新
たとえば、私は1つのCSVに100のデータを持ち、もう1つに200のデータを持っています。まず、自分の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)
})
}
お使いのブラウザは、おそらくデータファイルをキャッシュしています。 ChromeでDevToolsを開いて、キャッシュを一時的に無効にすることができます。ネットワークにアクセスし、キャッシュを無効にするをクリックします。この作業のためにDevToolsを開いたままにする必要があります。 –
あなたが正しいです、私のブラウザはデータファイルをキャッシュしていました。いくつかのコーディングで回避策がありますか?私はデータをロードする方法は標準ではないと思います。新しいデータを再ロードしたい場合、ファイル名を変更する必要がありますか? – oro777