0

보기 코드세로 막 대형 차트는

$.getJSON('Transacciones/getData',{}, function (data) { 
    dataModulo3 = data; 
    dibujarColumnChart(transformarData(data) , "divModulo3"); 
}); 

컨트롤러를 중심으로하지 않습니다, 나는 데이터를 얻을이

public ActionResult getData(){ 
    List<String[]> aux = new List<String[]>(); 
    aux.Add(new String[] { "string", "number", "number", "number", "number", "number", "number" });//tipo cabeceras 
    aux.Add(new String[] { "Year", "Austria", "Belgium", "Czech Republic", "Finland", "France", "Germany" });//nombre cabeceras 
    aux.Add(new String[] { "2003", "1336060", "3817614", "974066", "21104797", "6651824", "15727003"}); 
    return Json(aux, JsonRequestBehavior.AllowGet); 
} 

transformarData JS 기능

function transformarData(data) { 
    var rows = data.length; 
    var cols = data[0].length; 
    var tdata = new google.visualization.DataTable(); 
    for (var i = 0; i < cols; i++) { 
     tdata.addColumn(data[0][i], data[1][i]); 
    } 
    tdata.addRows(data.length); 
    for (var i = 2; i < data.length; i++) {  
     for (var j = 0; j < cols; j++) { 
      var value = data[i][j]; 
      if (data[0][j] == 'number') { 
       value = parseInt(data[i][j]); 
      } 
     tdata.setCell(i, j, value); 
     } 
    } 
    return tdata; 
} 

dibujarColumnChart 기능 JS 우는 소리 울부 짖는 소리

내가 열 차트를 중심으로 얻을

$.getJSON('Transacciones/getData',dataJson , function (data) { 
    dataModulo3 = data; 
    var datajs = google.visualization.arrayToDataTable([ 
    ['Year', 'Austria', 'Belgium', 'Czech Republic', 'Finland', 'France', 'Germany'], 
    ['2003', 1336060, 3817614,  974066,  1104797, 6651824, 15727003] 
    ]); 
    dibujarColumnChart(datajs , "divModulo3"); 
}); 

:

column chart centered

내가 알고 싶은

Not center column chart

하지만 그 대신 컨트롤러에서 데이터를 사용하는 나는 자바 스크립트 데이터를 사용하는 경우json 호출에서 데이터를 가져 오는이 기둥 형 차트를 가운데에 맞출 수 있습니다.

답변

0

tdata.setCell (i - 2, j, value) 대신 tdata.setCell (i, j, value)를 사용하여 첫 번째 fow에 값을주지 않았습니다. 대신 Google에서 행을 만들었으므로 오른쪽으로 이동해야합니다. 또한 3 행 대신 1 행을 추가해야합니다.

function transformarData(data) { 
    var rows = data.length-2; 
    var cols = data[0].length; 
    var tdata = new google.visualization.DataTable(); 
    log("creado tdata"); 
    //tdata.addColumn(data[, data[0][0]); 
    for (var i = 0; i < cols; i++) { 
     tdata.addColumn(data[0][i], data[1][i]); 
    } 
    tdata.addRows(rows); 
    for (var i = 2; i < data.length; i++) { 
     for (var j = 0; j < cols; j++) { 
      var value = data[i][j]; 
      if (data[0][j] == 'number') { 
       value = parseInt(data[i][j]); 
      } 
      tdata.setCell(i-2, j, value); 
     } 
    } 
    return tdata; 
} 

PD :

는 아래의 코드 조각을 참조하십시오 다른 게시물의가 귀하의 질문에 대답 할 사람들의 더 나은 이해를 위해 영어로 변수의 이름을 시도해보십시오.

관련 문제