2016-09-30 5 views
4

私はZingChartのドキュメントを訪問し、レンダリング複数のチャートの方法によっては、複数の呼び出しを知るようになったが、このような関数をレンダリングします。ZingChartで単一のレンダリング関数呼び出しで複数のチャートをレンダリングできますか?

zingchart.render({ 
    id:'chartDiv1', 
    data:myChart1, 
    height:300, 
    width:500 
    }); 
    zingchart.render({ 
    id:'chartDiv2', 
    data:myChart2, 
    height:300, 
    width:500  
    }); 
    zingchart.render({ 
    id:'chartDiv3', 
    data:myChart3, 
    height:300, 
    width:500 
    }); 
    zingchart.render({ 
    id:'dashboardDiv', 
    data:myDashboard, 
    height:500, 
    width:700 
    }); 

しかし、私のコードで私はにしたいが、私の上司が監督のもとして私のために多くを動作するはず少ないコードを記述します。

私の質問レンダリング機能を呼び出すだけで複数のチャートをレンダリングできますか? 好きなもの:

zingchart.render({ 
    id:{'chartDiv1','chartDiv2','chartDiv3','chartDiv4'}, 
    data:{myChart1,myChart2,myChart3,myChart4}, 
    height:300, 
    width:500 
    }); 

ありがとうございます。

答えて

6

私はZingChartチームのメンバーです。

私は現在、上記のサンプルコードをサポートしていませんが、JavaScriptでこれを行う方法はいくつかあります。

function renderZingCharts(_id,_data) { 
    zingchart.render({ 
    id: _id, 
    data: _data, 
    height:300, 
    width:500 
    }); 
} 

renderZingCharts('chartDiv1', myChart1); 
renderZingCharts('chartDiv2', myChart2); 
renderZingCharts('chartDiv3', myChart3); 
renderZingCharts('chartDiv4', myChart4); 

また、配列の内容を保持したい場合はループスルーすることもできます。

function renderZingCharts(aIds, aData) { 

    // do some sanity checks for length of two arrays here ??? 

    for (var i=0; i < aIds.length; i++) { 
    zingchart.render({ 
     id: aIds[i], 
     data: aData[i], 
     height:300, 
     width:500 
    }); 
    } 
} 
var ids = ['chartDiv1', 'chartDiv2', 'chartDiv3', 'chartDiv4']; 
var configs = [myChart1, myChart2, myChart3, myChart4]; 
renderZingCharts(ids,configs); 
+1

私はあなたの意見を持っていましたが、今後のアップデートでこのシナリオを念頭に置いておくことをお勧めします。 –

関連する問題