X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;ds=sidebyside;f=dygraph-combined.js;h=8b1628e5e19e6fcf0638efebb35d670b4a8894fe;hb=7ca60bd1161dc1e4c623fb9def484fa20854149c;hp=870b7df1830df2ae37ac1d1b57ef2a891604b035;hpb=f474c2a348651a43addaf796d31aab16e5851b74;p=dygraphs.git
diff --git a/dygraph-combined.js b/dygraph-combined.js
index 870b7df..8b1628e 100644
--- a/dygraph-combined.js
+++ b/dygraph-combined.js
@@ -1,1013 +1,8 @@
-/***
-
- MochiKit.MochiKit 1.4 : PACKED VERSION
-
- THIS FILE IS AUTOMATICALLY GENERATED. If creating patches, please
- diff against the source tree, not this file.
-
- See for documentation, downloads, license, etc.
-
- (c) 2005 Bob Ippolito. All rights Reserved.
-
-***/
-
-if(typeof (dojo)!="undefined"){
-dojo.provide("MochiKit.Base");
-}
-if(typeof (MochiKit)=="undefined"){
-MochiKit={};
-}
-if(typeof (MochiKit.Base)=="undefined"){
-MochiKit.Base={};
-}
-if(typeof (MochiKit.__export__)=="undefined"){
-MochiKit.__export__=(MochiKit.__compat__||(typeof (JSAN)=="undefined"&&typeof (dojo)=="undefined"));
-}
-MochiKit.Base.VERSION="1.4";
-MochiKit.Base.NAME="MochiKit.Base";
-MochiKit.Base.update=function(_1,_2){
-if(_1===null){
-_1={};
-}
-for(var i=1;i=0;i--){
-_15.unshift(o[i]);
-}
-}else{
-res.push(o);
-}
-}
-return res;
-},extend:function(_18,obj,_1a){
-if(!_1a){
-_1a=0;
-}
-if(obj){
-var l=obj.length;
-if(typeof (l)!="number"){
-if(typeof (MochiKit.Iter)!="undefined"){
-obj=MochiKit.Iter.list(obj);
-l=obj.length;
-}else{
-throw new TypeError("Argument not an array-like and MochiKit.Iter not present");
-}
-}
-if(!_18){
-_18=[];
-}
-for(var i=_1a;i>b;
-},zrshift:function(a,b){
-return a>>>b;
-},eq:function(a,b){
-return a==b;
-},ne:function(a,b){
-return a!=b;
-},gt:function(a,b){
-return a>b;
-},ge:function(a,b){
-return a>=b;
-},lt:function(a,b){
-return al){
-_90=l;
-}
-}
-_8e=[];
-for(i=0;i<_90;i++){
-var _92=[];
-for(var j=1;j=0;i--){
-_af=[_ab[i].apply(this,_af)];
-}
-return _af[0];
-};
-},bind:function(_b1,_b2){
-if(typeof (_b1)=="string"){
-_b1=_b2[_b1];
-}
-var _b3=_b1.im_func;
-var _b4=_b1.im_preargs;
-var _b5=_b1.im_self;
-var m=MochiKit.Base;
-if(typeof (_b1)=="function"&&typeof (_b1.apply)=="undefined"){
-_b1=m._wrapDumbFunction(_b1);
-}
-if(typeof (_b3)!="function"){
-_b3=_b1;
-}
-if(typeof (_b2)!="undefined"){
-_b5=_b2;
-}
-if(typeof (_b4)=="undefined"){
-_b4=[];
-}else{
-_b4=_b4.slice();
-}
-m.extend(_b4,arguments,2);
-var _b7=function(){
-var _b8=arguments;
-var me=arguments.callee;
-if(me.im_preargs.length>0){
-_b8=m.concat(me.im_preargs,_b8);
-}
-var _ba=me.im_self;
-if(!_ba){
-_ba=this;
-}
-return me.im_func.apply(_ba,_b8);
-};
-_b7.im_self=_b5;
-_b7.im_func=_b3;
-_b7.im_preargs=_b4;
-return _b7;
-},bindMethods:function(_bb){
-var _bc=MochiKit.Base.bind;
-for(var k in _bb){
-var _be=_bb[k];
-if(typeof (_be)=="function"){
-_bb[k]=_bc(_be,_bb);
-}
-}
-},registerComparator:function(_bf,_c0,_c1,_c2){
-MochiKit.Base.comparatorRegistry.register(_bf,_c0,_c1,_c2);
-},_primitives:{"boolean":true,"string":true,"number":true},compare:function(a,b){
-if(a==b){
-return 0;
-}
-var _c5=(typeof (a)=="undefined"||a===null);
-var _c6=(typeof (b)=="undefined"||b===null);
-if(_c5&&_c6){
-return 0;
-}else{
-if(_c5){
-return -1;
-}else{
-if(_c6){
-return 1;
-}
-}
-}
-var m=MochiKit.Base;
-var _c8=m._primitives;
-if(!(typeof (a) in _c8&&typeof (b) in _c8)){
-try{
-return m.comparatorRegistry.match(a,b);
-}
-catch(e){
-if(e!=m.NotFound){
-throw e;
-}
-}
-}
-if(ab){
-return 1;
-}
-}
-var _c9=m.repr;
-throw new TypeError(_c9(a)+" and "+_c9(b)+" can not be compared");
-},compareDateLike:function(a,b){
-return MochiKit.Base.compare(a.getTime(),b.getTime());
-},compareArrayLike:function(a,b){
-var _ce=MochiKit.Base.compare;
-var _cf=a.length;
-var _d0=0;
-if(_cf>b.length){
-_d0=1;
-_cf=b.length;
-}else{
-if(_cf=0;i--){
-sum+=o[i];
-}
-}else{
-sum+=o;
-}
-}
-if(_113<=0){
-throw new TypeError("mean() requires at least one argument");
-}
-return sum/_113;
-},median:function(){
-var data=MochiKit.Base.flattenArguments(arguments);
-if(data.length===0){
-throw new TypeError("median() requires at least one argument");
-}
-data.sort(compare);
-if(data.length%2==0){
-var _117=data.length/2;
-return (data[_117]+data[_117-1])/2;
-}else{
-return data[(data.length-1)/2];
-}
-},findValue:function(lst,_119,_11a,end){
-if(typeof (end)=="undefined"||end===null){
-end=lst.length;
-}
-if(typeof (_11a)=="undefined"||_11a===null){
-_11a=0;
-}
-var cmp=MochiKit.Base.compare;
-for(var i=_11a;i0))){
-var kv=MochiKit.DOM.formContents(_127);
-_127=kv[0];
-_128=kv[1];
-}else{
-if(arguments.length==1){
-if(typeof (_127.length)=="number"&&_127.length==2){
-return arguments.callee(_127[0],_127[1]);
-}
-var o=_127;
-_127=[];
-_128=[];
-for(var k in o){
-var v=o[k];
-if(typeof (v)=="function"){
-continue;
-}else{
-if(typeof (v)!="string"&&typeof (v.length)=="number"){
-for(var i=0;i1;r/=10){x=pad.toString()+x}return x.toString()};Date.prototype.locale="en-GB";if(document.getElementsByTagName("html")&&document.getElementsByTagName("html")[0].lang){Date.prototype.locale=document.getElementsByTagName("html")[0].lang}Date.ext.locales={};Date.ext.locales.en={a:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],A:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],b:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],B:["January","February","March","April","May","June","July","August","September","October","November","December"],c:"%a %d %b %Y %T %Z",p:["AM","PM"],P:["am","pm"],x:"%d/%m/%y",X:"%T"};Date.ext.locales["en-US"]=Date.ext.locales.en;Date.ext.locales["en-US"].c="%a %d %b %Y %r %Z";Date.ext.locales["en-US"].x="%D";Date.ext.locales["en-US"].X="%r";Date.ext.locales["en-GB"]=Date.ext.locales.en;Date.ext.locales["en-AU"]=Date.ext.locales["en-GB"];Date.ext.formats={a:function(d){return Date.ext.locales[d.locale].a[d.getDay()]},A:function(d){return Date.ext.locales[d.locale].A[d.getDay()]},b:function(d){return Date.ext.locales[d.locale].b[d.getMonth()]},B:function(d){return Date.ext.locales[d.locale].B[d.getMonth()]},c:"toLocaleString",C:function(d){return Date.ext.util.xPad(parseInt(d.getFullYear()/100,10),0)},d:["getDate","0"],e:["getDate"," "],g:function(d){return Date.ext.util.xPad(parseInt(Date.ext.util.G(d)/100,10),0)},G:function(d){var y=d.getFullYear();var V=parseInt(Date.ext.formats.V(d),10);var W=parseInt(Date.ext.formats.W(d),10);if(W>V){y++}else{if(W===0&&V>=52){y--}}return y},H:["getHours","0"],I:function(d){var I=d.getHours()%12;return Date.ext.util.xPad(I===0?12:I,0)},j:function(d){var ms=d-new Date(""+d.getFullYear()+"/1/1 GMT");ms+=d.getTimezoneOffset()*60000;var doy=parseInt(ms/60000/60/24,10)+1;return Date.ext.util.xPad(doy,0,100)},m:function(d){return Date.ext.util.xPad(d.getMonth()+1,0)},M:["getMinutes","0"],p:function(d){return Date.ext.locales[d.locale].p[d.getHours()>=12?1:0]},P:function(d){return Date.ext.locales[d.locale].P[d.getHours()>=12?1:0]},S:["getSeconds","0"],u:function(d){var dow=d.getDay();return dow===0?7:dow},U:function(d){var doy=parseInt(Date.ext.formats.j(d),10);var rdow=6-d.getDay();var woy=parseInt((doy+rdow)/7,10);return Date.ext.util.xPad(woy,0)},V:function(d){var woy=parseInt(Date.ext.formats.W(d),10);var dow1_1=(new Date(""+d.getFullYear()+"/1/1")).getDay();var idow=woy+(dow1_1>4||dow1_1<=1?0:1);if(idow==53&&(new Date(""+d.getFullYear()+"/12/31")).getDay()<4){idow=1}else{if(idow===0){idow=Date.ext.formats.V(new Date(""+(d.getFullYear()-1)+"/12/31"))}}return Date.ext.util.xPad(idow,0)},w:"getDay",W:function(d){var doy=parseInt(Date.ext.formats.j(d),10);var rdow=7-Date.ext.formats.u(d);var woy=parseInt((doy+rdow)/7,10);return Date.ext.util.xPad(woy,0,10)},y:function(d){return Date.ext.util.xPad(d.getFullYear()%100,0)},Y:"getFullYear",z:function(d){var o=d.getTimezoneOffset();var H=Date.ext.util.xPad(parseInt(Math.abs(o/60),10),0);var M=Date.ext.util.xPad(o%60,0);return(o>0?"-":"+")+H+M},Z:function(d){return d.toString().replace(/^.*\(([^)]+)\)$/,"$1")},"%":function(d){return"%"}};Date.ext.aggregates={c:"locale",D:"%m/%d/%y",h:"%b",n:"\n",r:"%I:%M:%S %p",R:"%H:%M",t:"\t",T:"%H:%M:%S",x:"locale",X:"locale"};Date.ext.aggregates.z=Date.ext.formats.z(new Date());Date.ext.aggregates.Z=Date.ext.formats.Z(new Date());Date.ext.unsupported={};Date.prototype.strftime=function(fmt){if(!(this.locale in Date.ext.locales)){if(this.locale.replace(/-[a-zA-Z]+$/,"") in Date.ext.locales){this.locale=this.locale.replace(/-[a-zA-Z]+$/,"")}else{this.locale="en-GB"}}var d=this;while(fmt.match(/%[cDhnrRtTxXzZ]/)){fmt=fmt.replace(/%([cDhnrRtTxXzZ])/g,function(m0,m1){var f=Date.ext.aggregates[m1];return(f=="locale"?Date.ext.locales[d.locale][m1]:f)})}var str=fmt.replace(/%([aAbBCdegGHIjmMpPSuUVwWyY%])/g,function(m0,m1){var f=Date.ext.formats[m1];if(typeof (f)=="string"){return d[f]()}else{if(typeof (f)=="function"){return f.call(d,d)}else{if(typeof (f)=="object"&&typeof (f[0])=="string"){return Date.ext.util.xPad(d[f[0]](),f[1])}else{return m1}}}});d=null;return str};
DygraphLayout=function(_1,_2){
this.dygraph_=_1;
this.options={};
-MochiKit.Base.update(this.options,_2?_2:{});
+Dygraph.update(this.options,_2?_2:{});
this.datasets=new Array();
};
DygraphLayout.prototype.attr_=function(_3){
@@ -1105,23 +100,15 @@ delete this.datasets;
this.datasets=new Array();
};
DygraphLayout.prototype.updateOptions=function(_24){
-MochiKit.Base.update(this.options,_24?_24:{});
+Dygraph.update(this.options,_24?_24:{});
};
DygraphCanvasRenderer=function(_25,_26,_27,_28){
this.dygraph_=_25;
this.options={"strokeWidth":0.5,"drawXAxis":true,"drawYAxis":true,"axisLineColor":"black","axisLineWidth":0.5,"axisTickSize":3,"axisLabelColor":"black","axisLabelFont":"Arial","axisLabelFontSize":9,"axisLabelWidth":50,"drawYGrid":true,"drawXGrid":true,"gridLineColor":"rgb(128,128,128)"};
-MochiKit.Base.update(this.options,_28);
+Dygraph.update(this.options,_28);
this.layout=_27;
this.element=_26;
this.container=this.element.parentNode;
-this.isIE=(/MSIE/.test(navigator.userAgent)&&!window.opera);
-if(this.isIE&&!isNil(G_vmlCanvasManager)){
-this.IEDelay=0.5;
-this.maxTries=5;
-this.renderDelay=null;
-this.clearDelay=null;
-this.element=G_vmlCanvasManager.initElement(this.element);
-}
this.height=this.element.height;
this.width=this.element.width;
if(!this.isIE&&!(DygraphCanvasRenderer.isSupported(this.element))){
@@ -1166,7 +153,7 @@ this.ylabels=new Array();
DygraphCanvasRenderer.isSupported=function(_31){
var _32=null;
try{
-if(MochiKit.Base.isUndefinedOrNull(_31)){
+if(typeof (_31)=="undefined"||_31==null){
_32=document.createElement("canvas");
}else{
_32=_31;
@@ -1322,114 +309,110 @@ DygraphCanvasRenderer.prototype._renderLineChart=function(){
var _53=this.element.getContext("2d");
var _54=this.options.colorScheme.length;
var _55=this.options.colorScheme;
-var _56=MochiKit.Base.keys(this.layout.datasets);
-var _57=this.layout.options.errorBars;
-var _58=_56.length;
-var _59=MochiKit.Base.bind;
-var _60=MochiKit.Base.partial;
+var _56=this.layout.options.errorBars;
+var _57=[];
+for(var _58 in this.layout.datasets){
+_57.push(_58);
+}
+var _59=_57.length;
for(var i=0;i=0){
+ctx.moveTo(_64,_65[0]);
+ctx.lineTo(_60.canvasx,_70[0]);
+ctx.lineTo(_60.canvasx,_70[1]);
+ctx.lineTo(_64,_65[1]);
+ctx.closePath();
}
+_65[0]=_70[0];
+_65[1]=_70[1];
+_64=_60.canvasx;
}
}
+ctx.fill();
}
-};
-var _71=function(ctx){
-for(var i=0;i<_58;i++){
-var _72=_56[i];
-var _73=_55[i%_54];
+}
+for(var i=0;i<_59;i++){
+var _62=_57[i];
+var _63=_55[i%_54];
_53.save();
-_53.strokeStyle=_73;
-_53.lineWidth=this.options.strokeWidth;
-var _74=-1;
-var _75=[-1,-1];
-var _76=0;
-var _77=this.layout.yscale;
-var rgb=new RGBColor(_73);
-var _79="rgba("+rgb.r+","+rgb.g+","+rgb.b+",0.15)";
-ctx.fillStyle=_79;
+var _60=this.layout.points[0];
+var _71=this.dygraph_.attr_("pointSize");
+var _64=null,prevY=null;
+var _72=this.dygraph_.attr_("drawPoints");
+var _73=this.layout.points;
+for(var j=0;j<_73.length;j++){
+var _60=_73[j];
+if(_60.name==_62){
+if(!_61(_60.canvasy)){
+_64=prevY=null;
+}else{
+var _74=(!_64&&(j==_73.length-1||!_61(_73[j+1].canvasy)));
+if(!_64){
+_64=_60.canvasx;
+prevY=_60.canvasy;
+}else{
ctx.beginPath();
-for(var j=0;j=0){
-ctx.moveTo(_74,_75[0]);
-ctx.lineTo(_80.canvasx,_81[0]);
-ctx.lineTo(_80.canvasx,_81[1]);
-ctx.lineTo(_74,_75[1]);
-ctx.closePath();
+if(_72||_74){
+ctx.beginPath();
+ctx.fillStyle=_63;
+ctx.arc(_60.canvasx,_60.canvasy,_71,0,2*Math.PI,false);
+ctx.fill();
}
-_75[0]=_81[0];
-_75[1]=_81[1];
-_74=_80.canvasx;
}
}
-ctx.fill();
}
-};
-if(_57){
-_59(_71,this)(_53);
}
-_59(_63,this)(_53);
_53.restore();
};
-Dygraph=function(div,_82,_83){
+Dygraph=function(div,_75,_76){
if(arguments.length>0){
if(arguments.length==4){
this.warn("Using deprecated four-argument dygraph constructor");
-this.__old_init__(div,_82,arguments[2],arguments[3]);
+this.__old_init__(div,_75,arguments[2],arguments[3]);
}else{
-this.__init__(div,_82,_83);
+this.__init__(div,_75,_76);
}
}
};
@@ -1445,33 +428,33 @@ Dygraph.DEFAULT_ROLL_PERIOD=1;
Dygraph.DEFAULT_WIDTH=480;
Dygraph.DEFAULT_HEIGHT=320;
Dygraph.AXIS_LINE_WIDTH=0.3;
-Dygraph.DEFAULT_ATTRS={highlightCircleSize:3,pixelsPerXLabel:60,pixelsPerYLabel:30,labelsDivWidth:250,labelsDivStyles:{},labelsSeparateLines:false,labelsKMB:false,strokeWidth:1,axisTickSize:3,axisLabelFontSize:14,xAxisLabelWidth:50,yAxisLabelWidth:50,rightGap:5,showRoller:false,xValueFormatter:Dygraph.dateString_,xValueParser:Dygraph.dateParser,xTicker:Dygraph.dateTicker,sigma:2,errorBars:false,fractions:false,wilsonInterval:true,customBars:false};
+Dygraph.DEFAULT_ATTRS={highlightCircleSize:3,pixelsPerXLabel:60,pixelsPerYLabel:30,labelsDivWidth:250,labelsDivStyles:{},labelsSeparateLines:false,labelsKMB:false,strokeWidth:1,axisTickSize:3,axisLabelFontSize:14,xAxisLabelWidth:50,yAxisLabelWidth:50,rightGap:5,showRoller:false,xValueFormatter:Dygraph.dateString_,xValueParser:Dygraph.dateParser,xTicker:Dygraph.dateTicker,delimiter:",",sigma:2,errorBars:false,fractions:false,wilsonInterval:true,customBars:false};
Dygraph.DEBUG=1;
Dygraph.INFO=2;
Dygraph.WARNING=3;
Dygraph.ERROR=3;
-Dygraph.prototype.__old_init__=function(div,_84,_85,_86){
-if(_85!=null){
-var _87=["Date"];
-for(var i=0;i<_85.length;i++){
-_87.push(_85[i]);
+Dygraph.prototype.__old_init__=function(div,_77,_78,_79){
+if(_78!=null){
+var _80=["Date"];
+for(var i=0;i<_78.length;i++){
+_80.push(_78[i]);
}
-MochiKit.Base.update(_86,{"labels":_87});
+Dygraph.update(_79,{"labels":_80});
}
-this.__init__(div,_84,_86);
+this.__init__(div,_77,_79);
};
-Dygraph.prototype.__init__=function(div,_88,_89){
-if(_89==null){
-_89={};
+Dygraph.prototype.__init__=function(div,_81,_82){
+if(_82==null){
+_82={};
}
this.maindiv_=div;
-this.file_=_88;
-this.rollPeriod_=_89.rollPeriod||Dygraph.DEFAULT_ROLL_PERIOD;
+this.file_=_81;
+this.rollPeriod_=_82.rollPeriod||Dygraph.DEFAULT_ROLL_PERIOD;
this.previousVerticalX_=-1;
-this.fractions_=_89.fractions||false;
-this.dateWindow_=_89.dateWindow||null;
-this.valueRange_=_89.valueRange||null;
-this.wilsonInterval_=_89.wilsonInterval||true;
+this.fractions_=_82.fractions||false;
+this.dateWindow_=_82.dateWindow||null;
+this.valueRange_=_82.valueRange||null;
+this.wilsonInterval_=_82.wilsonInterval||true;
div.innerHTML="";
if(div.style.width==""){
div.style.width=Dygraph.DEFAULT_WIDTH+"px";
@@ -1482,166 +465,171 @@ div.style.height=Dygraph.DEFAULT_HEIGHT+"px";
this.width_=parseInt(div.style.width,10);
this.height_=parseInt(div.style.height,10);
this.user_attrs_={};
-MochiKit.Base.update(this.user_attrs_,_89);
+Dygraph.update(this.user_attrs_,_82);
this.attrs_={};
-MochiKit.Base.update(this.attrs_,Dygraph.DEFAULT_ATTRS);
+Dygraph.update(this.attrs_,Dygraph.DEFAULT_ATTRS);
this.labelsFromCSV_=(this.attr_("labels")==null);
this.createInterface_();
-this.layoutOptions_={"errorBars":(this.attr_("errorBars")||this.attr_("customBars")),"xOriginIsZero":false};
-MochiKit.Base.update(this.layoutOptions_,this.attrs_);
-MochiKit.Base.update(this.layoutOptions_,this.user_attrs_);
+this.layoutOptions_={"xOriginIsZero":false};
+Dygraph.update(this.layoutOptions_,this.attrs_);
+Dygraph.update(this.layoutOptions_,this.user_attrs_);
+Dygraph.update(this.layoutOptions_,{"errorBars":(this.attr_("errorBars")||this.attr_("customBars"))});
this.layout_=new DygraphLayout(this,this.layoutOptions_);
this.renderOptions_={colorScheme:this.colors_,strokeColor:null,axisLineWidth:Dygraph.AXIS_LINE_WIDTH};
-MochiKit.Base.update(this.renderOptions_,this.attrs_);
-MochiKit.Base.update(this.renderOptions_,this.user_attrs_);
+Dygraph.update(this.renderOptions_,this.attrs_);
+Dygraph.update(this.renderOptions_,this.user_attrs_);
this.plotter_=new DygraphCanvasRenderer(this,this.hidden_,this.layout_,this.renderOptions_);
this.createStatusMessage_();
this.createRollInterface_();
this.createDragInterface_();
this.start_();
};
-Dygraph.prototype.attr_=function(_90){
-if(typeof (this.user_attrs_[_90])!="undefined"){
-return this.user_attrs_[_90];
+Dygraph.prototype.attr_=function(_83){
+if(typeof (this.user_attrs_[_83])!="undefined"){
+return this.user_attrs_[_83];
}else{
-if(typeof (this.attrs_[_90])!="undefined"){
-return this.attrs_[_90];
+if(typeof (this.attrs_[_83])!="undefined"){
+return this.attrs_[_83];
}else{
return null;
}
}
};
-Dygraph.prototype.log=function(_91,_92){
+Dygraph.prototype.log=function(_84,_85){
if(typeof (console)!="undefined"){
-switch(_91){
+switch(_84){
case Dygraph.DEBUG:
-console.debug("dygraphs: "+_92);
+console.debug("dygraphs: "+_85);
break;
case Dygraph.INFO:
-console.info("dygraphs: "+_92);
+console.info("dygraphs: "+_85);
break;
case Dygraph.WARNING:
-console.warn("dygraphs: "+_92);
+console.warn("dygraphs: "+_85);
break;
case Dygraph.ERROR:
-console.error("dygraphs: "+_92);
+console.error("dygraphs: "+_85);
break;
}
}
};
-Dygraph.prototype.info=function(_93){
-this.log(Dygraph.INFO,_93);
+Dygraph.prototype.info=function(_86){
+this.log(Dygraph.INFO,_86);
};
-Dygraph.prototype.warn=function(_94){
-this.log(Dygraph.WARNING,_94);
+Dygraph.prototype.warn=function(_87){
+this.log(Dygraph.WARNING,_87);
};
-Dygraph.prototype.error=function(_95){
-this.log(Dygraph.ERROR,_95);
+Dygraph.prototype.error=function(_88){
+this.log(Dygraph.ERROR,_88);
};
Dygraph.prototype.rollPeriod=function(){
return this.rollPeriod_;
};
Dygraph.addEvent=function(el,evt,fn){
-var _98=function(e){
+var _91=function(e){
if(!e){
var e=window.event;
}
fn(e);
};
if(window.addEventListener){
-el.addEventListener(evt,_98,false);
+el.addEventListener(evt,_91,false);
}else{
-el.attachEvent("on"+evt,_98);
+el.attachEvent("on"+evt,_91);
}
};
Dygraph.prototype.createInterface_=function(){
-var _100=this.maindiv_;
+var _93=this.maindiv_;
this.graphDiv=document.createElement("div");
this.graphDiv.style.width=this.width_+"px";
this.graphDiv.style.height=this.height_+"px";
-_100.appendChild(this.graphDiv);
-this.canvas_=document.createElement("canvas");
+_93.appendChild(this.graphDiv);
+this.canvas_=Dygraph.createCanvas();
this.canvas_.style.position="absolute";
this.canvas_.width=this.width_;
this.canvas_.height=this.height_;
+this.canvas_.style.width=this.width_+"px";
+this.canvas_.style.height=this.height_+"px";
this.graphDiv.appendChild(this.canvas_);
this.hidden_=this.createPlotKitCanvas_(this.canvas_);
-var _101=this;
+var _94=this;
Dygraph.addEvent(this.hidden_,"mousemove",function(e){
-_101.mouseMove_(e);
+_94.mouseMove_(e);
});
Dygraph.addEvent(this.hidden_,"mouseout",function(e){
-_101.mouseOut_(e);
+_94.mouseOut_(e);
});
};
-Dygraph.prototype.createPlotKitCanvas_=function(_102){
-var h=document.createElement("canvas");
+Dygraph.prototype.createPlotKitCanvas_=function(_95){
+var h=Dygraph.createCanvas();
h.style.position="absolute";
-h.style.top=_102.style.top;
-h.style.left=_102.style.left;
+h.style.top=_95.style.top;
+h.style.left=_95.style.left;
h.width=this.width_;
h.height=this.height_;
+h.style.width=this.width_+"px";
+h.style.height=this.height_+"px";
this.graphDiv.appendChild(h);
return h;
};
-Dygraph.hsvToRGB=function(hue,_105,_106){
+Dygraph.hsvToRGB=function(hue,_98,_99){
var red;
-var _108;
+var _101;
var blue;
-if(_105===0){
-red=_106;
-_108=_106;
-blue=_106;
+if(_98===0){
+red=_99;
+_101=_99;
+blue=_99;
}else{
var i=Math.floor(hue*6);
var f=(hue*6)-i;
-var p=_106*(1-_105);
-var q=_106*(1-(_105*f));
-var t=_106*(1-(_105*(1-f)));
+var p=_99*(1-_98);
+var q=_99*(1-(_98*f));
+var t=_99*(1-(_98*(1-f)));
switch(i){
case 1:
red=q;
-_108=_106;
+_101=_99;
blue=p;
break;
case 2:
red=p;
-_108=_106;
+_101=_99;
blue=t;
break;
case 3:
red=p;
-_108=q;
-blue=_106;
+_101=q;
+blue=_99;
break;
case 4:
red=t;
-_108=p;
-blue=_106;
+_101=p;
+blue=_99;
break;
case 5:
-red=_106;
-_108=p;
+red=_99;
+_101=p;
blue=q;
break;
case 6:
case 0:
-red=_106;
-_108=t;
+red=_99;
+_101=t;
blue=p;
break;
}
}
red=Math.floor(255*red+0.5);
-_108=Math.floor(255*_108+0.5);
+_101=Math.floor(255*_101+0.5);
blue=Math.floor(255*blue+0.5);
-return "rgb("+red+","+_108+","+blue+")";
+return "rgb("+red+","+_101+","+blue+")";
};
Dygraph.prototype.setColors_=function(){
var num=this.attr_("labels").length-1;
this.colors_=[];
-var _115=this.attr_("colors");
-if(!_115){
+var _108=this.attr_("colors");
+if(!_108){
var sat=this.attr_("colorSaturation")||1;
var val=this.attr_("colorValue")||0.5;
for(var i=1;i<=num;i++){
@@ -1650,73 +638,73 @@ this.colors_.push(Dygraph.hsvToRGB(hue,sat,val));
}
}else{
for(var i=0;i=10){
-self.doZoom_(Math.min(_134,_136),Math.max(_134,_136));
+Dygraph.addEvent(this.hidden_,"mouseup",function(_140){
+if(_126){
+_126=false;
+_129=getX(_140);
+_130=getY(_140);
+var _141=Math.abs(_129-_127);
+var _142=Math.abs(_130-_128);
+if(_141<2&&_142<2&&self.attr_("clickCallback")!=null&&self.lastx_!=undefined){
+self.attr_("clickCallback")(_140,self.lastx_,self.selPoints_);
+}
+if(_141>=10){
+self.doZoom_(Math.min(_127,_129),Math.max(_127,_129));
}else{
self.canvas_.getContext("2d").clearRect(0,0,self.canvas_.width,self.canvas_.height);
}
-_134=null;
-_135=null;
+_127=null;
+_128=null;
}
});
-Dygraph.addEvent(this.hidden_,"dblclick",function(_150){
+Dygraph.addEvent(this.hidden_,"dblclick",function(_143){
+if(self.dateWindow_==null){
+return;
+}
self.dateWindow_=null;
self.drawGraph_(self.rawData_);
-var _151=self.rawData_[0][0];
-var _152=self.rawData_[self.rawData_.length-1][0];
+var _144=self.rawData_[0][0];
+var _145=self.rawData_[self.rawData_.length-1][0];
if(self.attr_("zoomCallback")){
-self.attr_("zoomCallback")(_151,_152);
+self.attr_("zoomCallback")(_144,_145);
}
});
};
-Dygraph.prototype.drawZoomRect_=function(_153,endX,_155){
+Dygraph.prototype.drawZoomRect_=function(_146,endX,_148){
var ctx=this.canvas_.getContext("2d");
-if(_155){
-ctx.clearRect(Math.min(_153,_155),0,Math.abs(_153-_155),this.height_);
+if(_148){
+ctx.clearRect(Math.min(_146,_148),0,Math.abs(_146-_148),this.height_);
}
-if(endX&&_153){
+if(endX&&_146){
ctx.fillStyle="rgba(128,128,128,0.33)";
-ctx.fillRect(Math.min(_153,endX),0,Math.abs(endX-_153),this.height_);
+ctx.fillRect(Math.min(_146,endX),0,Math.abs(endX-_146),this.height_);
}
};
-Dygraph.prototype.doZoom_=function(lowX,_157){
-var _158=this.layout_.points;
-var _159=null;
-var _160=null;
-for(var i=0;i<_158.length;i++){
-var cx=_158[i].canvasx;
-var x=_158[i].xval;
-if(cx_159)){
-_159=x;
+Dygraph.prototype.doZoom_=function(lowX,_150){
+var _151=this.layout_.points;
+var _152=null;
+var _153=null;
+for(var i=0;i<_151.length;i++){
+var cx=_151[i].canvasx;
+var x=_151[i].xval;
+if(cx_152)){
+_152=x;
}
-if(cx>_157&&(_160==null||x<_160)){
-_160=x;
+if(cx>_150&&(_153==null||x<_153)){
+_153=x;
}
}
-if(_159==null){
-_159=_158[0].xval;
+if(_152==null){
+_152=_151[0].xval;
}
-if(_160==null){
-_160=_158[_158.length-1].xval;
+if(_153==null){
+_153=_151[_151.length-1].xval;
}
-this.dateWindow_=[_159,_160];
+this.dateWindow_=[_152,_153];
this.drawGraph_(this.rawData_);
if(this.attr_("zoomCallback")){
-this.attr_("zoomCallback")(_159,_160);
+this.attr_("zoomCallback")(_152,_153);
}
};
-Dygraph.prototype.mouseMove_=function(_162){
-var _163=Dygraph.pageX(_162)-Dygraph.findPosX(this.hidden_);
-var _164=this.layout_.points;
-var _165=-1;
-var _166=-1;
-var _167=1e+100;
+Dygraph.prototype.mouseMove_=function(_155){
+var _156=Dygraph.pageX(_155)-Dygraph.findPosX(this.hidden_);
+var _157=this.layout_.points;
+var _158=-1;
+var _159=-1;
+var _160=1e+100;
var idx=-1;
-for(var i=0;i<_164.length;i++){
-var dist=Math.abs(_164[i].canvasx-_163);
-if(dist>_167){
+for(var i=0;i<_157.length;i++){
+var dist=Math.abs(_157[i].canvasx-_156);
+if(dist>_160){
break;
}
-_167=dist;
+_160=dist;
idx=i;
}
if(idx>=0){
-_165=_164[idx].xval;
+_158=_157[idx].xval;
}
-if(_163>_164[_164.length-1].canvasx){
-_165=_164[_164.length-1].xval;
+if(_156>_157[_157.length-1].canvasx){
+_158=_157[_157.length-1].xval;
}
-var _170=[];
-for(var i=0;i<_164.length;i++){
-if(_164[i].xval==_165){
-_170.push(_164[i]);
+this.selPoints_=[];
+for(var i=0;i<_157.length;i++){
+if(_157[i].xval==_158){
+this.selPoints_.push(_157[i]);
}
}
-var _171=this.attr_("highlightCircleSize");
+if(this.attr_("highlightCallback")){
+this.attr_("highlightCallback")(_155,_158,this.selPoints_);
+}
+var _163=this.attr_("highlightCircleSize");
var ctx=this.canvas_.getContext("2d");
if(this.previousVerticalX_>=0){
var px=this.previousVerticalX_;
-ctx.clearRect(px-_171-1,0,2*_171+2,this.height_);
+ctx.clearRect(px-_163-1,0,2*_163+2,this.height_);
}
var isOK=function(x){
return x&&!isNaN(x);
};
-if(_170.length>0){
-var _163=_170[0].canvasx;
-var _173=this.attr_("xValueFormatter")(_165,this)+":";
+if(this.selPoints_.length>0){
+var _156=this.selPoints_[0].canvasx;
+var _165=this.attr_("xValueFormatter")(_158,this)+":";
var clen=this.colors_.length;
-for(var i=0;i<_170.length;i++){
-if(!isOK(_170[i].canvasy)){
+for(var i=0;i";
+_165+="
";
}
-var _175=_170[i];
+var _167=this.selPoints_[i];
var c=new RGBColor(this.colors_[i%clen]);
-_173+=" "+_175.name+":"+this.round_(_175.yval,2);
+_165+=" "+_167.name+":"+this.round_(_167.yval,2);
}
-this.attr_("labelsDiv").innerHTML=_173;
-this.lastx_=_165;
+this.attr_("labelsDiv").innerHTML=_165;
+this.lastx_=_158;
ctx.save();
-for(var i=0;i<_170.length;i++){
-if(!isOK(_170[i%clen].canvasy)){
+for(var i=0;i=Dygraph.DAILY){
-_203.push({v:t,label:new Date(t+3600*1000).strftime(_205)});
+if(frac==0||_194>=Dygraph.DAILY){
+_195.push({v:t,label:new Date(t+3600*1000).strftime(_197)});
}else{
-_203.push({v:t,label:this.hmsString_(t)});
+_195.push({v:t,label:this.hmsString_(t)});
}
}
}else{
-var _206;
-var _207=1;
-if(_202==Dygraph.MONTHLY){
-_206=[0,1,2,3,4,5,6,7,8,9,10,11,12];
+var _198;
+var _199=1;
+if(_194==Dygraph.MONTHLY){
+_198=[0,1,2,3,4,5,6,7,8,9,10,11,12];
}else{
-if(_202==Dygraph.QUARTERLY){
-_206=[0,3,6,9];
+if(_194==Dygraph.QUARTERLY){
+_198=[0,3,6,9];
}else{
-if(_202==Dygraph.BIANNUAL){
-_206=[0,6];
+if(_194==Dygraph.BIANNUAL){
+_198=[0,6];
}else{
-if(_202==Dygraph.ANNUAL){
-_206=[0];
+if(_194==Dygraph.ANNUAL){
+_198=[0];
}else{
-if(_202==Dygraph.DECADAL){
-_206=[0];
-_207=10;
+if(_194==Dygraph.DECADAL){
+_198=[0];
+_199=10;
}
}
}
}
}
-var _208=new Date(_200).getFullYear();
-var _209=new Date(_201).getFullYear();
-var _210=Dygraph.zeropad;
-for(var i=_208;i<=_209;i++){
-if(i%_207!=0){
+var _200=new Date(_192).getFullYear();
+var _201=new Date(_193).getFullYear();
+var _202=Dygraph.zeropad;
+for(var i=_200;i<=_201;i++){
+if(i%_199!=0){
continue;
}
-for(var j=0;j<_206.length;j++){
-var _211=i+"/"+_210(1+_206[j])+"/01";
-var t=Date.parse(_211);
-if(t<_200||t>_201){
+for(var j=0;j<_198.length;j++){
+var _203=i+"/"+_202(1+_198[j])+"/01";
+var t=Date.parse(_203);
+if(t<_192||t>_193){
continue;
}
-_203.push({v:t,label:new Date(t).strftime("%b %y")});
+_195.push({v:t,label:new Date(t).strftime("%b %y")});
}
}
}
-return _203;
+return _195;
};
-Dygraph.dateTicker=function(_212,_213,self){
-var _214=-1;
+Dygraph.dateTicker=function(_204,_205,self){
+var _206=-1;
for(var i=0;i=self.attr_("pixelsPerXLabel")){
-_214=i;
+var _207=self.NumXTicks(_204,_205,i);
+if(self.width_/_207>=self.attr_("pixelsPerXLabel")){
+_206=i;
break;
}
}
-if(_214>=0){
-return self.GetXAxis(_212,_213,_214);
+if(_206>=0){
+return self.GetXAxis(_204,_205,_206);
}else{
}
};
Dygraph.numericTicks=function(minV,maxV,self){
-var _218=[1,2,5];
-var _219,low_val,high_val,nTicks;
-var _220=self.attr_("pixelsPerYLabel");
+var _210=[1,2,5];
+var _211,low_val,high_val,nTicks;
+var _212=self.attr_("pixelsPerYLabel");
for(var i=-10;i<50;i++){
-var _221=Math.pow(10,i);
-for(var j=0;j<_218.length;j++){
-_219=_221*_218[j];
-low_val=Math.floor(minV/_219)*_219;
-high_val=Math.ceil(maxV/_219)*_219;
-nTicks=(high_val-low_val)/_219;
-var _222=self.height_/nTicks;
-if(_222>_220){
+var _213=Math.pow(10,i);
+for(var j=0;j<_210.length;j++){
+_211=_213*_210[j];
+low_val=Math.floor(minV/_211)*_211;
+high_val=Math.ceil(maxV/_211)*_211;
+nTicks=(high_val-low_val)/_211;
+var _214=self.height_/nTicks;
+if(_214>_212){
break;
}
}
-if(_222>_220){
+if(_214>_212){
break;
}
}
-var _223=[];
+var _215=[];
for(var i=0;i=k*k*k){
-_225=self.round_(_224/(k*k*k),1)+"B";
+if(_216>=k*k*k){
+_217=self.round_(_216/(k*k*k),1)+"B";
}else{
-if(_224>=k*k){
-_225=self.round_(_224/(k*k),1)+"M";
+if(_216>=k*k){
+_217=self.round_(_216/(k*k),1)+"M";
}else{
-if(_224>=k){
-_225=self.round_(_224/k,1)+"K";
+if(_216>=k){
+_217=self.round_(_216/k,1)+"K";
}
}
}
}
-_223.push({label:_225,v:_224});
+_215.push({label:_217,v:_216});
}
-return _223;
+return _215;
};
Dygraph.prototype.addYTicks_=function(minY,maxY){
-var _229=Dygraph.numericTicks(minY,maxY,this);
-this.layout_.updateOptions({yAxis:[minY,maxY],yTicks:_229});
+var _221=Dygraph.numericTicks(minY,maxY,this);
+this.layout_.updateOptions({yAxis:[minY,maxY],yTicks:_221});
};
-Dygraph.prototype.extremeValues_=function(_230){
+Dygraph.prototype.extremeValues_=function(_222){
var minY=null,maxY=null;
var bars=this.attr_("errorBars")||this.attr_("customBars");
if(bars){
-for(var j=0;j<_230.length;j++){
-var y=_230[j][1][0];
+for(var j=0;j<_222.length;j++){
+var y=_222[j][1][0];
if(!y){
continue;
}
-var low=y-_230[j][1][1];
-var high=y+_230[j][1][2];
+var low=y-_222[j][1][1];
+var high=y+_222[j][1][2];
if(low>y){
low=y;
}
@@ -2168,8 +1162,8 @@ minY=low;
}
}
}else{
-for(var j=0;j<_230.length;j++){
-var y=_230[j][1];
+for(var j=0;j<_222.length;j++){
+var y=_222[j][1];
if(!y){
continue;
}
@@ -2189,64 +1183,64 @@ this.layout_.removeAllDatasets();
this.setColors_();
this.attrs_["pointSize"]=0.5*this.attr_("highlightCircleSize");
for(var i=1;i=low&&_234[k][0]<=high){
-_235.push(_234[k]);
+var _227=[];
+for(var k=0;k<_226.length;k++){
+if(_226[k][0]>=low&&_226[k][0]<=high){
+_227.push(_226[k]);
}
}
-_234=_235;
+_226=_227;
}
-var _236=this.extremeValues_(_234);
-var _237=_236[0];
-var _238=_236[1];
-if(!minY||_237maxY){
-maxY=_238;
+if(!maxY||_230>maxY){
+maxY=_230;
}
if(bars){
var vals=[];
-for(var j=0;j<_234.length;j++){
-vals[j]=[_234[j][0],_234[j][1][0],_234[j][1][1],_234[j][1][2]];
+for(var j=0;j<_226.length;j++){
+vals[j]=[_226[j][0],_226[j][1][0],_226[j][1][1],_226[j][1][2]];
}
this.layout_.addDataset(this.attr_("labels")[i],vals);
}else{
-this.layout_.addDataset(this.attr_("labels")[i],_234);
+this.layout_.addDataset(this.attr_("labels")[i],_226);
}
}
if(this.valueRange_!=null){
this.addYTicks_(this.valueRange_[0],this.valueRange_[1]);
}else{
var span=maxY-minY;
-var _241=maxY+0.1*span;
-var _242=minY-0.1*span;
-if(_242<0&&minY>=0){
-_242=0;
+var _233=maxY+0.1*span;
+var _234=minY-0.1*span;
+if(_234<0&&minY>=0){
+_234=0;
}
-if(_241>0&&maxY<=0){
-_241=0;
+if(_233>0&&maxY<=0){
+_233=0;
}
if(this.attr_("includeZero")){
if(maxY<0){
-_241=0;
+_233=0;
}
if(minY>0){
-_242=0;
+_234=0;
}
}
-this.addYTicks_(_242,_241);
+this.addYTicks_(_234,_233);
}
this.addXTicks_();
this.layout_.evaluateWithError();
@@ -2254,44 +1248,44 @@ this.plotter_.clear();
this.plotter_.render();
this.canvas_.getContext("2d").clearRect(0,0,this.canvas_.width,this.canvas_.height);
};
-Dygraph.prototype.rollingAverage=function(_243,_244){
-if(_243.length<2){
-return _243;
+Dygraph.prototype.rollingAverage=function(_235,_236){
+if(_235.length<2){
+return _235;
}
-var _244=Math.min(_244,_243.length-1);
-var _245=[];
-var _246=this.attr_("sigma");
+var _236=Math.min(_236,_235.length-1);
+var _237=[];
+var _238=this.attr_("sigma");
if(this.fractions_){
var num=0;
var den=0;
var mult=100;
-for(var i=0;i<_243.length;i++){
-num+=_243[i][1][0];
-den+=_243[i][1][1];
-if(i-_244>=0){
-num-=_243[i-_244][1][0];
-den-=_243[i-_244][1][1];
-}
-var date=_243[i][0];
-var _249=den?num/den:0;
+for(var i=0;i<_235.length;i++){
+num+=_235[i][1][0];
+den+=_235[i][1][1];
+if(i-_236>=0){
+num-=_235[i-_236][1][0];
+den-=_235[i-_236][1][1];
+}
+var date=_235[i][0];
+var _241=den?num/den:0;
if(this.attr_("errorBars")){
if(this.wilsonInterval_){
if(den){
-var p=_249<0?0:_249,n=den;
-var pm=_246*Math.sqrt(p*(1-p)/n+_246*_246/(4*n*n));
-var _251=1+_246*_246/den;
-var low=(p+_246*_246/(2*den)-pm)/_251;
-var high=(p+_246*_246/(2*den)+pm)/_251;
-_245[i]=[date,[p*mult,(p-low)*mult,(high-p)*mult]];
+var p=_241<0?0:_241,n=den;
+var pm=_238*Math.sqrt(p*(1-p)/n+_238*_238/(4*n*n));
+var _243=1+_238*_238/den;
+var low=(p+_238*_238/(2*den)-pm)/_243;
+var high=(p+_238*_238/(2*den)+pm)/_243;
+_237[i]=[date,[p*mult,(p-low)*mult,(high-p)*mult]];
}else{
-_245[i]=[date,[0,0,0]];
+_237[i]=[date,[0,0,0]];
}
}else{
-var _252=den?_246*Math.sqrt(_249*(1-_249)/den):1;
-_245[i]=[date,[mult*_249,mult*_252,mult*_252]];
+var _244=den?_238*Math.sqrt(_241*(1-_241)/den):1;
+_237[i]=[date,[mult*_241,mult*_244,mult*_244]];
}
}else{
-_245[i]=[date,mult*_249];
+_237[i]=[date,mult*_241];
}
}
}else{
@@ -2299,105 +1293,109 @@ if(this.attr_("customBars")){
var low=0;
var mid=0;
var high=0;
-var _254=0;
-for(var i=0;i<_243.length;i++){
-var data=_243[i][1];
+var _246=0;
+for(var i=0;i<_235.length;i++){
+var data=_235[i][1];
var y=data[1];
-_245[i]=[_243[i][0],[y,y-data[0],data[2]-y]];
+_237[i]=[_235[i][0],[y,y-data[0],data[2]-y]];
+if(y&&!isNaN(y)){
low+=data[0];
mid+=y;
high+=data[2];
-_254+=1;
-if(i-_244>=0){
-var prev=_243[i-_244];
+_246+=1;
+}
+if(i-_236>=0){
+var prev=_235[i-_236];
+if(prev[1][1]&&!isNaN(prev[1][1])){
low-=prev[1][0];
mid-=prev[1][1];
high-=prev[1][2];
-_254-=1;
+_246-=1;
+}
}
-_245[i]=[_243[i][0],[1*mid/_254,1*(mid-low)/_254,1*(high-mid)/_254]];
+_237[i]=[_235[i][0],[1*mid/_246,1*(mid-low)/_246,1*(high-mid)/_246]];
}
}else{
-var _256=Math.min(_244-1,_243.length-2);
+var _248=Math.min(_236-1,_235.length-2);
if(!this.attr_("errorBars")){
-if(_244==1){
-return _243;
+if(_236==1){
+return _235;
}
-for(var i=0;i<_243.length;i++){
+for(var i=0;i<_235.length;i++){
var sum=0;
-var _258=0;
-for(var j=Math.max(0,i-_244+1);j=0||str.indexOf("/")>=0||isNaN(parseFloat(str))){
-_263=true;
+_255=true;
}else{
if(str.length==8&&str>"19700101"&&str<"20371231"){
-_263=true;
+_255=true;
}
}
-if(_263){
+if(_255){
this.attrs_.xValueFormatter=Dygraph.dateString_;
this.attrs_.xValueParser=Dygraph.dateParser;
this.attrs_.xTicker=Dygraph.dateTicker;
@@ -2413,57 +1411,64 @@ this.attrs_.xTicker=Dygraph.numericTicks;
};
Dygraph.prototype.parseCSV_=function(data){
var ret=[];
-var _264=data.split("\n");
-var _265=0;
+var _256=data.split("\n");
+var _257=this.attr_("delimiter");
+if(_256[0].indexOf(_257)==-1&&_256[0].indexOf("\t")>=0){
+_257="\t";
+}
+var _258=0;
if(this.labelsFromCSV_){
-_265=1;
-this.attrs_.labels=_264[0].split(",");
-}
-var _266;
-var _267=false;
-var _268=this.attr_("labels").length;
-for(var i=_265;i<_264.length;i++){
-var line=_264[i];
+_258=1;
+this.attrs_.labels=_256[0].split(_257);
+}
+var _259;
+var _260=false;
+var _261=this.attr_("labels").length;
+for(var i=_258;i<_256.length;i++){
+var line=_256[i];
if(line.length==0){
continue;
}
-var _270=line.split(",");
-if(_270.length<2){
+if(line[0]=="#"){
+continue;
+}
+var _263=line.split(_257);
+if(_263.length<2){
continue;
}
-var _271=[];
-if(!_267){
-this.detectTypeFromString_(_270[0]);
-_266=this.attr_("xValueParser");
-_267=true;
+var _264=[];
+if(!_260){
+this.detectTypeFromString_(_263[0]);
+_259=this.attr_("xValueParser");
+_260=true;
}
-_271[0]=_266(_270[0],this);
+_264[0]=_259(_263[0],this);
if(this.fractions_){
-for(var j=1;j<_270.length;j++){
-var vals=_270[j].split("/");
-_271[j]=[parseFloat(vals[0]),parseFloat(vals[1])];
+for(var j=1;j<_263.length;j++){
+var vals=_263[j].split("/");
+_264[j]=[parseFloat(vals[0]),parseFloat(vals[1])];
}
}else{
if(this.attr_("errorBars")){
-for(var j=1;j<_270.length;j+=2){
-_271[(j+1)/2]=[parseFloat(_270[j]),parseFloat(_270[j+1])];
+for(var j=1;j<_263.length;j+=2){
+_264[(j+1)/2]=[parseFloat(_263[j]),parseFloat(_263[j+1])];
}
}else{
if(this.attr_("customBars")){
-for(var j=1;j<_270.length;j++){
-var vals=_270[j].split(";");
-_271[j]=[parseFloat(vals[0]),parseFloat(vals[1]),parseFloat(vals[2])];
+for(var j=1;j<_263.length;j++){
+var vals=_263[j].split(";");
+_264[j]=[parseFloat(vals[0]),parseFloat(vals[1]),parseFloat(vals[2])];
}
}else{
-for(var j=1;j<_270.length;j++){
-_271[j]=parseFloat(_270[j]);
+for(var j=1;j<_263.length;j++){
+_264[j]=parseFloat(_263[j]);
}
}
}
}
-ret.push(_271);
-if(_271.length!=_268){
-this.error("Number of columns in line "+i+" ("+_271.length+") does not agree with number of labels ("+_268+") "+line);
+ret.push(_264);
+if(_264.length!=_261){
+this.error("Number of columns in line "+i+" ("+_264.length+") does not agree with number of labels ("+_261+") "+line);
}
}
return ret;
@@ -2484,22 +1489,22 @@ for(var i=1;i=0){
this.loadedEvent_(this.file_);
}else{
var req=new XMLHttpRequest();
-var _279=this;
+var _275=this;
req.onreadystatechange=function(){
if(req.readyState==4){
if(req.status==200){
-_279.loadedEvent_(req.responseText);
+_275.loadedEvent_(req.responseText);
}
}
};
@@ -2588,64 +1625,72 @@ this.error("Unknown data format: "+(typeof this.file_));
}
}
};
-Dygraph.prototype.updateOptions=function(_280){
-if(_280.rollPeriod){
-this.rollPeriod_=_280.rollPeriod;
+Dygraph.prototype.updateOptions=function(_276){
+if(_276.rollPeriod){
+this.rollPeriod_=_276.rollPeriod;
}
-if(_280.dateWindow){
-this.dateWindow_=_280.dateWindow;
+if(_276.dateWindow){
+this.dateWindow_=_276.dateWindow;
}
-if(_280.valueRange){
-this.valueRange_=_280.valueRange;
+if(_276.valueRange){
+this.valueRange_=_276.valueRange;
}
-MochiKit.Base.update(this.user_attrs_,_280);
+Dygraph.update(this.user_attrs_,_276);
this.labelsFromCSV_=(this.attr_("labels")==null);
this.layout_.updateOptions({"errorBars":this.attr_("errorBars")});
-if(_280["file"]&&_280["file"]!=this.file_){
-this.file_=_280["file"];
+if(_276["file"]&&_276["file"]!=this.file_){
+this.file_=_276["file"];
this.start_();
}else{
this.drawGraph_(this.rawData_);
}
};
-Dygraph.prototype.adjustRoll=function(_281){
-this.rollPeriod_=_281;
+Dygraph.prototype.adjustRoll=function(_277){
+this.rollPeriod_=_277;
this.drawGraph_(this.rawData_);
};
-Dygraph.GVizChart=function(_282){
-this.container=_282;
+Dygraph.createCanvas=function(){
+var _278=document.createElement("canvas");
+isIE=(/MSIE/.test(navigator.userAgent)&&!window.opera);
+if(isIE){
+_278=G_vmlCanvasManager.initElement(_278);
+}
+return _278;
+};
+Dygraph.GVizChart=function(_279){
+this.container=_279;
};
-Dygraph.GVizChart.prototype.draw=function(data,_283){
+Dygraph.GVizChart.prototype.draw=function(data,_280){
this.container.innerHTML="";
-this.date_graph=new Dygraph(this.container,data,_283);
+this.date_graph=new Dygraph(this.container,data,_280);
};
DateGraph=Dygraph;
-function RGBColor(_284){
+function RGBColor(_281){
this.ok=false;
-if(_284.charAt(0)=="#"){
-_284=_284.substr(1,6);
+if(_281.charAt(0)=="#"){
+_281=_281.substr(1,6);
}
-_284=_284.replace(/ /g,"");
-_284=_284.toLowerCase();
-var _285={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};
-for(var key in _285){
-if(_284==key){
-_284=_285[key];
+_281=_281.replace(/ /g,"");
+_281=_281.toLowerCase();
+var _282={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};
+for(var key in _282){
+if(_281==key){
+_281=_282[key];
}
}
-var _287=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(bits){
+var _284=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(bits){
return [parseInt(bits[1]),parseInt(bits[2]),parseInt(bits[3])];
}},{re:/^(\w{2})(\w{2})(\w{2})$/,example:["#00ff00","336699"],process:function(bits){
return [parseInt(bits[1],16),parseInt(bits[2],16),parseInt(bits[3],16)];
}},{re:/^(\w{1})(\w{1})(\w{1})$/,example:["#fb0","f0f"],process:function(bits){
return [parseInt(bits[1]+bits[1],16),parseInt(bits[2]+bits[2],16),parseInt(bits[3]+bits[3],16)];
}}];
-for(var i=0;i<_287.length;i++){
-var re=_287[i].re;
-var _290=_287[i].process;
-var bits=re.exec(_284);
+for(var i=0;i<_284.length;i++){
+var re=_284[i].re;
+var _287=_284[i].process;
+var bits=re.exec(_281);
if(bits){
-channels=_290(bits);
+channels=_287(bits);
this.r=channels[0];
this.g=channels[1];
this.b=channels[2];