これは古い質問だと思いますが、まだ ZingChart を使用している場合、私の回答がお役に立てば幸いです。
setseriesdata api メソッドを呼び出して系列データを変更し、ユーザーが間隔を変更したときに必要なポイントのみを表示することで、これを実現できます。このデモでは、単純な HTML<select>
要素を実装してドロップダウン メニューを作成しました。
<select id="interval">
<option value=1>Monthly</option>
<option value=2>Quarterly</option>
<option value=3>Semi-Annually</option>
</select>
JQuery .change() イベントを使用してドロップダウン メニューの変更をリッスンし、選択されたオプションに応じて系列データを変更します。
$('#interval').change(function(){
var select = document.getElementById("interval");
var selVal = select.options[select.selectedIndex].value;
if(selVal==1){
zingchart.exec("zc", "setseriesdata", {
"plotindex":0,
"data":{
"values":[[1353024000000,14.3],[1355443200000,14.4],[1359072000000,12.1],[1361491200000,12.3],[1363910400000,16.1],[1366934400000,13.6],[1369353600000,16.8],[1371772800000,16.5],[1374796800000,16.2],[1377216000000,16.0],[1380240000000,13.6],[1382659200000,12.6],[1385683200000,8.0]]
}
});
}
else if(selVal==2){
//setseriesdata API call with quarter data here
}
else if(selVal==3){
//setseriesdata API call with semi-annual data here
}
});
さらにいくつかのこと:
「scale-x」オブジェクトで「mirrored」ブール属性を使用して、そのスケールに沿ってデータを逆にすることができます。
ZingChart は、時刻/日付系列に Unix 時間 (ミリ秒単位) を使用します。
デモのページ ソースを表示して、完全なコードを確認してください。