javascript - How to show percentage in google BarChart? -


how total number , percentage in google charts? want percent , number in google charts, there options need set?

google.charts.load('current', {packages: ['corechart', 'bar']});  google.charts.setonloadcallback(drawbasic);    function drawbasic() {  	var data = google.visualization.arraytodatatable([  		['city', '2010 population',],  		['new york city, ny', 8175000],  		['los angeles, ca', 3792000],  		['chicago, il', 2695000],  		['houston, tx', 2099000],  		['philadelphia, pa', 1526000]  	]);  	var options = {  		title: 'population of largest u.s. cities',  		chartarea: {width: '50%'},  	};  	var chart = new google.visualization.barchart(document.getelementbyid('chart_div'));  	chart.draw(data, options);  }
  <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>    <div id="chart_div"></div>        

sample output below:

sample graph

use group method find total

var groupdata = google.visualization.data.group(   data,   [{column: 0, modifier: function () {return 'total'}, type:'string'}],   [{column: 1, aggregation: google.visualization.data.sum, type: 'number'}] ); 

and dataview add 'annotation' column

see following working snippet...

google.charts.load('current', {    callback: drawbasic,    packages: ['corechart']  });    function drawbasic() {    var data = google.visualization.arraytodatatable([      ['city', '2010 population',],      ['new york city, ny', 8175000],      ['los angeles, ca', 3792000],      ['chicago, il', 2695000],      ['houston, tx', 2099000],      ['philadelphia, pa', 1526000]    ]);      var groupdata = google.visualization.data.group(      data,      [{column: 0, modifier: function () {return 'total'}, type:'string'}],      [{column: 1, aggregation: google.visualization.data.sum, type: 'number'}]    );      var formatpercent = new google.visualization.numberformat({      pattern: '#,##0.0%'    });      var formatshort = new google.visualization.numberformat({      pattern: 'short'    });      var view = new google.visualization.dataview(data);    view.setcolumns([0, 1, {      calc: function (dt, row) {        var amount =  formatshort.formatvalue(dt.getvalue(row, 1));        var percent = formatpercent.formatvalue(dt.getvalue(row, 1) / groupdata.getvalue(0, 1));        return amount + ' (' + percent + ')';      },      type: 'string',      role: 'annotation'    }]);      var options = {      annotations: {        alwaysoutside: true      },      title: 'population of largest u.s. cities',      chartarea: {width: '50%'},    };    var chart = new google.visualization.barchart(document.getelementbyid('chart_div'));    chart.draw(view, options);  }
<script src="https://www.gstatic.com/charts/loader.js"></script>  <div id="chart_div"></div>


Comments

Popular posts from this blog

ubuntu - PHP script to find files of certain extensions in a directory, returns populated array when run in browser, but empty array when run from terminal -

php - How can i create a user dashboard -

javascript - How to detect toggling of the fullscreen-toolbar in jQuery Mobile? -