summaryrefslogtreecommitdiff
path: root/python/gras/query/chart_handler_breakdown.js
diff options
context:
space:
mode:
Diffstat (limited to 'python/gras/query/chart_handler_breakdown.js')
-rw-r--r--python/gras/query/chart_handler_breakdown.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/python/gras/query/chart_handler_breakdown.js b/python/gras/query/chart_handler_breakdown.js
new file mode 100644
index 0000000..8e90fc3
--- /dev/null
+++ b/python/gras/query/chart_handler_breakdown.js
@@ -0,0 +1,37 @@
+function GrasChartHandlerBreakdown(args)
+{
+ //input checking
+ if (args.block_ids.length != 1) throw gras_error_dialog(
+ "GrasChartHandlerBreakdown",
+ "Error making handler breakdown chart.\n"+
+ "Specify only one block for this chart."
+ );
+
+ //save enable
+ this.block_id = args.block_ids[0];
+
+ //make new chart
+ this.chart = new google.visualization.PieChart(args.panel);
+
+ this.title = "Handler Breakdown - " + this.block_id;
+}
+
+GrasChartHandlerBreakdown.prototype.update = function(point)
+{
+ var percents = gras_extract_percent_times(point, this.block_id);
+ var data = google.visualization.arrayToDataTable([
+ ['Task', 'Percent'],
+ ['Work prep', percents['prep']],
+ ['Work task', percents['work']],
+ ['Work post', percents['post']],
+ ['Input tasks', percents['input']],
+ ['Output tasks', percents['output']],
+ ]);
+
+ var options = {
+ width:GRAS_CHARTS_STD_WIDTH,
+ chartArea:{left:5,top:0,right:5,bottom:0,width:"100%",height:"100%"},
+ };
+
+ this.chart.draw(data, options);
+};