javascript - google visualization getColumnId -


i have datatable several columns. i'm building chart view of datatable. when item legend of chart clicked i'd column of underlying datatable.

code:

var score_select = google.visualization.events.addlistener(score_chart, 'select', function(){         var chrt = score_chart.getchart().getselection()[0].column;//i'm using chartwrapper         var dt = score_chart.getdatatable().getcolumnid(chrt);         var dt_check = score_chart.getdatatable().getnumberofcolumns();         alert(dt);          \\ alert(dt_check) returns proper number of columns     }); 

problem:

the column number referred chrt equal column number of view not column number of underlying datatable. mean, if datatable has 10 columns , view of datatable used score_chart has 2 columns chrt return either 1 or 2 regardless of columns datatable used in view. causing getcolumnid(...) return column different like.

any advice great help. thanks

assuming view specified in chartwrapper's view parameter, need reference view.columns array column index reference underlying datatable. also, since select event fires when users deselect element, possible array of selected elements empty, cause line throw error:

var chrt = score_chart.getchart().getselection()[0].column; 

so need test length of array (and possibly iterate on array elements if multi-select enabled in chart). code should this:

var score_select = google.visualization.events.addlistener(score_chart, 'select', function(){     var selection = score_chart.getchart().getselection();     if (selection.length) {         var chrt = selection[0].column;         var dt = score_chart.getdatatable().getcolumnid(chrt);         var dt_check = dt.getnumberofcolumns();          var view = score_chart.getview();         var dtcolumnindex = view.columns[chart];          alert('the selected column ' + dt.getcolumnlabel(dtcolumnindex));     } }); 

this assumes view.columns contains column references - if contains calculated columns, have decide want those.


Comments

Popular posts from this blog

android - Get AccessToken using signpost OAuth without opening a browser (Two legged Oauth) -

org.mockito.exceptions.misusing.InvalidUseOfMatchersException: mockito -

google shop client API returns 400 bad request error while adding an item -