diff options
Diffstat (limited to 'addons/web_graph/static/src/js/charts.js')
| -rw-r--r-- | addons/web_graph/static/src/js/charts.js | 109 |
1 files changed, 55 insertions, 54 deletions
diff --git a/addons/web_graph/static/src/js/charts.js b/addons/web_graph/static/src/js/charts.js index 3f4bed6e001..2ac84085ce1 100644 --- a/addons/web_graph/static/src/js/charts.js +++ b/addons/web_graph/static/src/js/charts.js @@ -1,77 +1,78 @@ openerp.web_graph.draw_chart = function (mode, pivot, svg) { - var values = _.map(pivot.rows.main.children, function (pt) { + + var data = _.map(pivot.rows.main.children, function (pt) { var val = pivot.get_value(pt.id, pivot.cols.main.id); return {x: pt.title, y: val}; }); - + switch (mode) { case 'bar_chart': - openerp.web_graph.bar_chart(values, svg); + bar_chart(); break; case 'line_chart': - openerp.web_graph.line_chart(values, svg); + line_chart(); break; case 'pie_chart': - openerp.web_graph.pie_chart(values, svg); + pie_chart(); break; } -} -openerp.web_graph.bar_chart = function (data, svg) { - nv.addGraph(function () { - var chart = nv.models.discreteBarChart() - .tooltips(false) - .showValues(true) - .staggerLabels(true) - .width(650) - .height(400); + function bar_chart () { + nv.addGraph(function () { + var chart = nv.models.discreteBarChart() + .tooltips(false) + .showValues(true) + .staggerLabels(true) + .width(650) + .height(400); - d3.select(svg) - .datum([{key: 'Bar chart', values:data}]) - .attr('width', 650) - .attr('height', 400) - .call(chart); + d3.select(svg) + .datum([{key: 'Bar chart', values:data}]) + .attr('width', 650) + .attr('height', 400) + .call(chart); - nv.utils.windowResize(chart.update); - return chart; - }); -}; + nv.utils.windowResize(chart.update); + return chart; + }); + }; -openerp.web_graph.line_chart = function (data, svg) { - nv.addGraph(function () { - var chart = nv.models.lineChart() - .x(function (d,u) { return u; }) - .width(600) - .height(300) - .margin({top: 30, right: 20, bottom: 20, left: 60}); + function line_chart () { + nv.addGraph(function () { + var chart = nv.models.lineChart() + .x(function (d,u) { return u; }) + .width(600) + .height(300) + .margin({top: 30, right: 20, bottom: 20, left: 60}); - d3.select(svg) - .attr('width', 600) - .attr('height', 300) - .datum([{key: 'Bar chart', values: data}]) - .call(chart); + d3.select(svg) + .attr('width', 600) + .attr('height', 300) + .datum([{key: 'Bar chart', values: data}]) + .call(chart); - return chart; - }); -}; + return chart; + }); + }; -openerp.web_graph.pie_chart = function(data, svg) { - nv.addGraph(function () { - var chart = nv.models.pieChart() - .color(d3.scale.category10().range()) - .width(650) - .height(400); + function pie_chart () { + nv.addGraph(function () { + var chart = nv.models.pieChart() + .color(d3.scale.category10().range()) + .width(650) + .height(400); - d3.select(svg) - .datum(data) - .transition().duration(1200) - .attr('width', 650) - .attr('height', 400) - .call(chart); + d3.select(svg) + .datum(data) + .transition().duration(1200) + .attr('width', 650) + .attr('height', 400) + .call(chart); - nv.utils.windowResize(chart.update); - return chart; - }); -}; + nv.utils.windowResize(chart.update); + return chart; + }); + }; +} |
