⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chart.js

📁 dojo与json创建无限级树的时候,当在父结点下添加了一个新结点,我怎么让父亲结点重新调用json加载一下子结点内容.
💻 JS
字号:
/*	Copyright (c) 2004-2006, The Dojo Foundation	All Rights Reserved.	Licensed under the Academic Free License version 2.1 or above OR the	modified BSD license. For more information on Dojo licensing, see:		http://dojotoolkit.org/community/licensing.shtml*/dojo.provide("dojo.widget.Chart");dojo.provide("dojo.widget.Chart.PlotTypes");dojo.provide("dojo.widget.Chart.DataSeries");dojo.require("dojo.widget.*");dojo.require("dojo.graphics.color");dojo.require("dojo.graphics.color.hsl");dojo.widget.tags.addParseTreeHandler("dojo:chart");dojo.widget.Chart = function(){	dojo.widget.Widget.call(this);	this.widgetType = "Chart";	this.isContainer = false;	this.series = [];	// FIXME: why is this a mixin method?	this.assignColors = function(){		var hue=30;		var sat=120;		var lum=120;		var steps = Math.round(330/this.series.length);		for(var i=0; i<this.series.length; i++){			var c=dojo.graphics.color.hsl2rgb(hue,sat,lum);			if(!this.series[i].color){				this.series[i].color = dojo.graphics.color.rgb2hex(c[0],c[1],c[2]);			}			hue += steps;		}	};}dojo.inherits(dojo.widget.Chart, dojo.widget.Widget);dojo.widget.Chart.PlotTypes = {	Bar:"bar",	Line:"line",	Scatter:"scatter",	Bubble:"bubble"};/* *	Every chart has a set of data series; this is the series.  Note that each *	member of value is an object and in the minimum has 2 properties: .x and *	.value. */dojo.widget.Chart.DataSeries = function(key, label, plotType, color){	// FIXME: why the hell are plot types specified neumerically? What is this? C?	this.id = "DataSeries"+dojo.widget.Chart.DataSeries.count++;	this.key = key;	this.label = label||this.id;	this.plotType = plotType||0;	this.color = color;	this.values = [];};dojo.lang.extend(dojo.widget.Chart.DataSeries, {	add: function(v){		if(v.x==null||v.value==null){			dojo.raise("dojo.widget.Chart.DataSeries.add: v must have both an 'x' and 'value' property.");		}		this.values.push(v);	},	clear: function(){		this.values=[];	},	createRange: function(len){		var idx = this.values.length-1;		var length = (len||this.values.length);		return { "index": idx, "length": length, "start":Math.max(idx-length,0) };	},	//	trend values	getMean: function(len){		var range = this.createRange(len);		if(range.index<0){ return 0; }		var t = 0;		var c = 0;		for(var i=range.index; i>=range.start; i--){			var n = parseFloat(this.values[i].value);			if(!isNaN(n)){ t += n; c++; }		}		t /= Math.max(c,1);		return t;	},	getMovingAverage: function(len){		var range = this.createRange(len);		if(range.index<0){ return 0; }		var t = 0;		var c = 0;		for(var i=range.index; i>=range.start; i--){			var n = parseFloat(this.values[i].value);			if(!isNaN(n)){ t += n; c++; }		}		t /= Math.max(c,1);		return t;	},	getVariance: function(len){		var range = this.createRange(len);		if(range.index < 0){ return 0; }		var t = 0; // FIXME: for tom: wtf are t, c, and s?		var s = 0;		var c = 0;		for(var i=range.index; i>=range.start; i--){			var n = parseFloat(this.values[i].value);			if(!isNaN(n)){				t += n;				s += Math.pow(n,2);				c++;			}		}		return (s/c)-Math.pow(t/c,2);	},	getStandardDeviation: function(len){		return Math.sqrt(this.getVariance(len));	},	getMax: function(len){		var range = this.createRange(len);		if(range.index < 0){ return 0; }		var t = 0;		for (var i=range.index; i>=range.start; i--){			var n=parseFloat(this.values[i].value);			if (!isNaN(n)){				t=Math.max(n,t);			}		}		return t;	},	getMin: function(len){		var range=this.createRange(len);		if(range.index < 0){ return 0; }		var t = 0;		for(var i=range.index; i>=range.start; i--){			var n = parseFloat(this.values[i].value);			if(!isNaN(n)){				t=Math.min(n,t);			}		}		return t;	},	getMedian: function(len){		var range = this.createRange(len);		if(range.index<0){ return 0; }		var a = [];		for (var i=range.index; i>=range.start; i--){			var n=parseFloat(this.values[i].value);			if (!isNaN(n)){				var b=false;				for(var j=0; j<a.length&&!b; j++){					if (n==a[j]) b=true; 				}				if(!b){ a.push(n); }			}		}		a.sort();		if(a.length>0){ return a[Math.ceil(a.length/2)]; }		return 0;	},	getMode: function(len){		var range=this.createRange(len);		if(range.index<0){ return 0; }		var o = {};		var ret = 0		var m = 0;		for(var i=range.index; i>=range.start; i--){			var n=parseFloat(this.values[i].value);			if(!isNaN(n)){				if (!o[this.values[i].value]) o[this.values[i].value] = 1;				else o[this.values[i].value]++;			}		}		for(var p in o){			if(m<o[p]){ m=o[p]; ret=p; }		}		return parseFloat(ret);	}});dojo.requireIf(dojo.render.svg.support.builtin, "dojo.widget.svg.Chart");dojo.requireIf(dojo.render.html.ie, "dojo.widget.vml.Chart");

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -