[IMP] small cleanups to chartview widget (addon web_graph)

bzr revid: ged@openerp.com-20131108152717-stbx0us8ipom67iq
This commit is contained in:
Gery Debongnie 2013-11-08 16:27:17 +01:00
parent eab6a192e9
commit 906d5168cc
2 changed files with 32 additions and 38 deletions

View File

@ -129,21 +129,19 @@ var ChartView = instance.web.Widget.extend({
},
draw: function (data, mode) {
// d3.select('.graph_chart_svg').remove();
$('.graph_chart_svg').empty();
$('.graph_chart_svg').append('<svg></svg>');
$('.graph_chart').empty();
$('.graph_chart').append('<svg></svg>');
switch (mode) {
case 'bar_chart':
this.render_bar_chart(data);
break;
case 'pie_chart':
this.render_pie_chart(data);
break;
case 'line_chart':
this.render_line_chart(data);
break;
case 'pie_chart':
this.render_pie_chart(data);
break;
}
},
@ -169,7 +167,7 @@ var ChartView = instance.web.Widget.extend({
.width(650)
.height(400);
d3.select('.graph_chart_svg svg')
d3.select('.graph_chart svg')
.datum(formatted_data)
.attr('width', 650)
.attr('height', 400)
@ -180,27 +178,6 @@ var ChartView = instance.web.Widget.extend({
});
},
render_pie_chart: function (data) {
var formatted_data = _.map(data, this.format_data.bind(this));
nv.addGraph(function () {
var chart = nv.models.pieChart()
.color(d3.scale.category10().range())
.width(650)
.height(400);
d3.select('.graph_chart_svg svg')
.datum(formatted_data)
.transition().duration(1200)
.attr('width', 650)
.attr('height', 400)
.call(chart);
nv.utils.windowResize(chart.update);
return chart;
});
},
render_line_chart: function (data) {
var measure_label = (this.measure) ? this.measure : 'Quantity';
@ -210,18 +187,15 @@ var ChartView = instance.web.Widget.extend({
}];
nv.addGraph(function () {
var width = 600,
height = 300;
var chart = nv.models.lineChart()
.x(function (d,u) { return u; })
.width(width)
.height(height)
.width(600)
.height(300)
.margin({top: 30, right: 20, bottom: 20, left: 60});
d3.select('.graph_chart_svg svg')
.attr('width', width)
.attr('height', height)
d3.select('.graph_chart svg')
.attr('width', 600)
.attr('height', 300)
.datum(formatted_data)
.call(chart);
@ -229,6 +203,27 @@ var ChartView = instance.web.Widget.extend({
});
},
render_pie_chart: function (data) {
var formatted_data = _.map(data, this.format_data.bind(this));
nv.addGraph(function () {
var chart = nv.models.pieChart()
.color(d3.scale.category10().range())
.width(650)
.height(400);
d3.select('.graph_chart svg')
.datum(formatted_data)
.transition().duration(1200)
.attr('width', 650)
.attr('height', 400)
.call(chart);
nv.utils.windowResize(chart.update);
return chart;
});
},
});
/**

View File

@ -25,7 +25,6 @@
</t>
<t t-name="chart_view">
<div class="graph_chart_svg"></div>
</t>
</templates>