2016-09-30 3 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 팀원입니다.

현재 위의 예제 코드는 지원하지 않지만 자바 스크립트로이 작업을 수행 할 수있는 몇 가지 방법이 있습니다.

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

나는 당신의 요지를 가지고 있지만, 나는 당신의 미래의 업데이 트에 대해이 시나리오를 염두에 두도록 권유 할 것이다. –