Google Chartsで積み上げ棒グラフを作成してみます。
Google Chartsのチュートリアルを参考にしました(URL)。
このような積み上げ棒グラフを描画します。マウスオーバーすると、ツールチップで値表示も可能です。
ソースコードはこんな感じ。値を直接書いてしまっていますが、本当は動的に取得するようにしたいところ。
<html> <head> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> google.charts.load('current', {'packages':['bar']}); google.charts.setOnLoadCallback(drawChart); function drawChart() { var data = google.visualization.arrayToDataTable([ ['項目', '衛生用品', '食品', '娯楽', '文房具', '交際費', '交通費', { role: 'annotation' } ], ['1月10日', 1274, 6523, 3980, 320, 0, 0, ''], ['1月11日', 570, 2980, 0, 0, 12000, 1680, ''], ['1月12日', 0, 1280, 9890, 675, 2000, 560, ''] ]); var options = { chart: { title : '日々の支出' }, width: 600, height: 400, legend: { position: 'top', maxLines: 3 }, bar: { groupWidth: '75%' }, isStacked: true }; var chart = new google.charts.Bar(document.getElementById('barchart_material')); chart.draw(data, google.charts.Bar.convertOptions(options)); } </script> </head> <body> <div id="barchart_material" style="width: 900px; height: 500px;"></div> </body> </html>
棒グラフを積み上げ式にしているのは、このオプションです。
isStacked: true
この部分をコメントアウトすると
//isStacked: true
グラフは並列表示となります。