私はJSONにかなり慣れていないので、そのようにコロプレスの例を作成したいと思います。http://gabrielflor.it/a-half-decade-of-rising-poverty年がクリックされるたびに、JSONの別の部分に移動します(私は推測しています)。これは、マップ全体を再描画して別のJSON.jsファイルを呼び出さないようにするために、通常このような機能が実行される方法ですか?もしそうなら、これらの.JSONファイルはかなり大きくなる可能性がありますか?
2 に答える
JSONを使用することは、毎年必要な値を保存するための唯一の方法です。別の年に切り替えると、JSは特定の年のJSONを解析し、コロプレスを更新します。提供した例では、使用するJSONは次のとおりです。
http://gabrielflor.it/static/data/saipe.json
必要なJSONは毎年1つしかなく、ロードするのは1回だけなので、これは良い方法です。ただし、d3はこのようにデータを必要とするため、gabrielflorの例のように追加のデータを提供する場合は、別のJSONを追加する必要があると思います。
http://gabrielflor.it/static/js/d3.poverty-by-county.js?v=121107
彼はd3で次のようなJSONをロードします。
d3.json('../static/data/states.json', function (json) {
states = json;
});
また
d3.json('../static/data/saipehighlights.json', function (json) {
saipehighlights = json;
});
提供したサンプルページのネットワークトラフィックを見ると(たとえば、Chromeデベロッパーツールを使用して)。貧困データを含むファイルは非常に大きいですが、マッピングデータファイルはさらに大きくなります。Webサイトの読み込みに時間がかかることに気付くでしょうが、その後、サーバーを呼び出さなくてもクライアントで非常にスムーズに実行されます。
このサイトは情報の閲覧と優れたデザインに関するものです。そのためには、後のユーザーエクスペリエンスがスムーズであれば、読み込み時間が長くても問題ないと思います(つまり、ユーザーは年のデータが読み込まれるのを待つ必要がありません)。