Changed tweets, added eca
This commit is contained in:
83
devjan_static/lib/linecharts.js
Normal file
83
devjan_static/lib/linecharts.js
Normal file
@@ -0,0 +1,83 @@
|
||||
(function($, block) {
|
||||
|
||||
// a simple linechart example
|
||||
block.fn.linechart = function(config) {
|
||||
var options = $.extend({
|
||||
line_series : ["default"],
|
||||
line_options : {
|
||||
series: {
|
||||
lines: {
|
||||
show: true
|
||||
}
|
||||
}
|
||||
}}, config);
|
||||
|
||||
// create empty linechart with parameter options
|
||||
var plot = $.plot(this.$element, [],options.line_options);
|
||||
|
||||
// dict containing the labels and values
|
||||
var linedata_series = {};
|
||||
|
||||
var initline = function(series) {
|
||||
for(var k in series) {
|
||||
linedata_series[series[k]] = {order:k,data:[]};
|
||||
}
|
||||
}
|
||||
|
||||
initline(options.line_series);
|
||||
|
||||
var addline = function(label, values) {
|
||||
var data;
|
||||
|
||||
if (linedata_series.hasOwnProperty(label))
|
||||
data = linedata_series[label].data;
|
||||
else
|
||||
data = linedata_series['default'].data;
|
||||
for(var v in values) {
|
||||
data.push(values[v]);
|
||||
}
|
||||
redraw();
|
||||
}
|
||||
|
||||
var setline = function(label, values) {
|
||||
if (linedata_series.hasOwnProperty(label))
|
||||
linedata_series[label].data = values;
|
||||
else
|
||||
linedata_series['default'].data = values;
|
||||
redraw();
|
||||
}
|
||||
|
||||
var redraw = function() {
|
||||
var result = [];
|
||||
for(var k in linedata_series) {
|
||||
if (linedata_series.hasOwnProperty(k)) {
|
||||
var line_serie = linedata_series[k];
|
||||
|
||||
result.push({label:k,data:line_serie.data});
|
||||
}
|
||||
}
|
||||
plot.setData(result);
|
||||
plot.setupGrid();
|
||||
plot.draw();
|
||||
}
|
||||
|
||||
var reset = function() {
|
||||
initline(options.line_series);
|
||||
}
|
||||
|
||||
this.actions({
|
||||
'set': function(e, message) {
|
||||
addline(message.series, message.value);
|
||||
},
|
||||
'add': function(e, message) {
|
||||
addline(message.series, message.value);
|
||||
},
|
||||
'reset': function(e, message) {
|
||||
reset();
|
||||
}
|
||||
});
|
||||
// return element to allow further work
|
||||
return this.$element;
|
||||
}
|
||||
|
||||
})(jQuery, block);
|
||||
Reference in New Issue
Block a user