| <script type="text/javascript"> |
| chartsDrawing += 1; |
| google.charts.setOnLoadCallback(drawChart_{{ chart_elem_id }}); |
| function drawChart_{{ chart_elem_id }}() { |
| var data = new google.visualization.DataTable(); |
| |
| // Chart options |
| var options = { |
| theme : 'material', |
| legend: 'none', |
| hAxis: { format: '', title: 'Commit number', |
| minValue: {{ chart_opts.haxis.min }}, |
| maxValue: {{ chart_opts.haxis.max }} }, |
| {% if measurement.type == 'time' %} |
| vAxis: { format: 'h:mm:ss' }, |
| {% else %} |
| vAxis: { format: '' }, |
| {% endif %} |
| pointSize: 5, |
| chartArea: { left: 80, right: 15 }, |
| }; |
| |
| // Define data columns |
| data.addColumn('number', 'Commit'); |
| data.addColumn('{{ measurement.value_type.gv_data_type }}', |
| '{{ measurement.value_type.quantity }}'); |
| // Add data rows |
| data.addRows([ |
| {% for sample in measurement.samples %} |
| [{{ sample.commit_num }}, {{ sample.mean.gv_value() }}], |
| {% endfor %} |
| ]); |
| |
| // Finally, draw the chart |
| chart_div = document.getElementById('{{ chart_elem_id }}'); |
| var chart = new google.visualization.LineChart(chart_div); |
| google.visualization.events.addListener(chart, 'ready', function () { |
| //chart_div = document.getElementById('{{ chart_elem_id }}'); |
| //chart_div.innerHTML = '<img src="' + chart.getImageURI() + '">'; |
| png_div = document.getElementById('{{ chart_elem_id }}_png'); |
| png_div.outerHTML = '<a id="{{ chart_elem_id }}_png" href="' + chart.getImageURI() + '">PNG</a>'; |
| console.log("CHART READY: {{ chart_elem_id }}"); |
| chartsDrawing -= 1; |
| if (chartsDrawing == 0) |
| console.log("ALL CHARTS READY"); |
| }); |
| chart.draw(data, options); |
| } |
| </script> |
| |