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

📄 chart.js

📁 dojo-0.4.0-ajax.zip ajax一个应用。在页面上可以直接用标签。此为ajax的框架
💻 JS
📖 第 1 页 / 共 2 页
字号:
/*	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.vml.Chart");dojo.require("dojo.widget.HtmlWidget");dojo.require("dojo.widget.Chart");dojo.require("dojo.math");dojo.require("dojo.html.layout");dojo.require("dojo.gfx.color");dojo.widget.defineWidget(	"dojo.widget.vml.Chart",	[dojo.widget.HtmlWidget, dojo.widget.Chart],	function(){		//	summary		//	initializes the VML version of Chart.		this.templatePath=null;		this.templateCssPath=null;		this._isInitialize=false;		this.hasData=false;		this.vectorNode=null;		this.plotArea=null;		this.dataGroup=null;		this.axisGroup=null;		this.properties={			height:0,	//	defaults, will resize to the domNode.			width:0,			defaultWidth:600,			defaultHeight:400,			plotType:null,			padding:{				top:10,				bottom:2,				left:60,				right:30			},			axes:{				x:{					plotAt:0,					label:"",					unitLabel:"",					unitType:Number,					nUnitsToShow:10,					range:{						min:0,						max:200					}				},				y:{					plotAt:0,					label:"",					unitLabel:"",					unitType:Number,					nUnitsToShow:10,					range:{						min:0,						max:200					}				}			}		};	},{	parseProperties:function(/* HTMLElement */node){		//	summary		//	Parse the properties off the main tag		var bRangeX=false;		var bRangeY=false;		if (node.getAttribute("width")){ 			this.properties.width=node.getAttribute("width");		}		if (node.getAttribute("height")){			this.properties.height=node.getAttribute("height");		}		if (node.getAttribute("plotType")){			this.properties.plotType=node.getAttribute("plotType");		}		if (node.getAttribute("padding")){			if (node.getAttribute("padding").indexOf(",") > -1)				var p=node.getAttribute("padding").split(","); 			else var p=node.getAttribute("padding").split(" ");			if (p.length==1){				var pad=parseFloat(p[0]);				this.properties.padding.top=pad;				this.properties.padding.right=pad;				this.properties.padding.bottom=pad;				this.properties.padding.left=pad;			} else if(p.length==2){				var padV=parseFloat(p[0]);				var padH=parseFloat(p[1]);				this.properties.padding.top=padV;				this.properties.padding.right=padH;				this.properties.padding.bottom=padV;				this.properties.padding.left=padH;			} else if(p.length==4){				this.properties.padding.top=parseFloat(p[0]);				this.properties.padding.right=parseFloat(p[1]);				this.properties.padding.bottom=parseFloat(p[2]);				this.properties.padding.left=parseFloat(p[3]);			}		}		if (node.getAttribute("rangeX")){			var p=node.getAttribute("rangeX");			if (p.indexOf(",")>-1) p=p.split(",");			else p=p.split(" ");			this.properties.axes.x.range.min=parseFloat(p[0]);			this.properties.axes.x.range.max=parseFloat(p[1]);			bRangeX=true;		}		if (node.getAttribute("rangeY")){			var p=node.getAttribute("rangeY");			if (p.indexOf(",")>-1) p=p.split(",");			else p=p.split(" ");			this.properties.axes.y.range.min=parseFloat(p[0]);			this.properties.axes.y.range.max=parseFloat(p[1]);			bRangeY=true;		}		return { rangeX:bRangeX, rangeY:bRangeY };	},	setAxesPlot:function(/* HTMLElement */table){		//	summary		//	figure out where to plot the axes		if (table.getAttribute("axisAt")){			var p=table.getAttribute("axisAt");			if (p.indexOf(",")>-1) p=p.split(",");			else p=p.split(" ");						//	x axis			if (!isNaN(parseFloat(p[0]))){				this.properties.axes.x.plotAt=parseFloat(p[0]);			} else if (p[0].toLowerCase()=="ymin"){				this.properties.axes.x.plotAt=this.properties.axes.y.range.min;			} else if (p[0].toLowerCase()=="ymax"){				this.properties.axes.x.plotAt=this.properties.axes.y.range.max;			}			// y axis			if (!isNaN(parseFloat(p[1]))){				this.properties.axes.y.plotAt=parseFloat(p[1]);			} else if (p[1].toLowerCase()=="xmin"){				this.properties.axes.y.plotAt=this.properties.axes.x.range.min;			} else if (p[1].toLowerCase()=="xmax"){				this.properties.axes.y.plotAt=this.properties.axes.x.range.max;			}		} else {			this.properties.axes.x.plotAt=this.properties.axes.y.range.min;			this.properties.axes.y.plotAt=this.properties.axes.x.range.min;		}	},	drawVectorNode:function(){		//	summary		//	Draws the main canvas for the chart		if(this.vectorNode){ this.destroy(); }		this.vectorNode=document.createElement("div");		this.vectorNode.style.width=this.properties.width+"px";		this.vectorNode.style.height=this.properties.height+"px";		this.vectorNode.style.position="relative";		this.domNode.appendChild(this.vectorNode);	},	drawPlotArea:function(){		//	summary		//	Draws the plot area for the chart		var plotWidth=this.properties.width-this.properties.padding.left-this.properties.padding.right;		var plotHeight=this.properties.height-this.properties.padding.top-this.properties.padding.bottom;		if(this.plotArea){			this.plotArea.parentNode.removeChild(this.plotArea);			this.plotArea=null;		}		this.plotArea=document.createElement("div");		this.plotArea.style.position="absolute";		this.plotArea.style.backgroundColor="#fff";		this.plotArea.style.top=(this.properties.padding.top)-2+"px";		this.plotArea.style.left=(this.properties.padding.left-1)+"px";		this.plotArea.style.width=plotWidth+"px";		this.plotArea.style.height=plotHeight+"px";		this.plotArea.style.clip="rect(0 "+plotWidth+" "+plotHeight+" 0)";		this.vectorNode.appendChild(this.plotArea);	},	drawDataGroup:function(){		//	summary		//	Draws the data group for the chart		var plotWidth=this.properties.width-this.properties.padding.left-this.properties.padding.right;		var plotHeight=this.properties.height-this.properties.padding.top-this.properties.padding.bottom;		if(this.dataGroup){			this.dataGroup.parentNode.removeChild(this.dataGroup);			this.dataGroup=null;		}		this.dataGroup=document.createElement("div");		this.dataGroup.style.position="absolute";		this.dataGroup.setAttribute("title", "Data Group");		this.dataGroup.style.top="0px";		this.dataGroup.style.left="0px";		this.dataGroup.style.width=plotWidth+"px";		this.dataGroup.style.height=plotHeight+"px";		this.plotArea.appendChild(this.dataGroup);	},	drawAxes:function(){		//	summary		//	Draws the axes for the chart		var plotWidth=this.properties.width-this.properties.padding.left-this.properties.padding.right;		var plotHeight=this.properties.height-this.properties.padding.top-this.properties.padding.bottom;		if(this.axisGroup){			this.axisGroup.parentNode.removeChild(this.axisGroup);			this.axisGroup=null;		}		this.axisGroup=document.createElement("div");		this.axisGroup.style.position="absolute";		this.axisGroup.setAttribute("title", "Axis Group");		this.axisGroup.style.top="0px";		this.axisGroup.style.left="0px";		this.axisGroup.style.width=plotWidth+"px";		this.axisGroup.style.height=plotHeight+"px";		this.plotArea.appendChild(this.axisGroup);		var stroke=1;		//	x axis		var line=document.createElement("v:line");		var y=dojo.widget.vml.Chart.Plotter.getY(this.properties.axes.x.plotAt, this);		line.setAttribute("from", "0px,"+y+"px");		line.setAttribute("to", plotWidth+"px,"+y+"px");		line.style.position="absolute";		line.style.top="0px";		line.style.left="0px";		line.style.antialias="false";		line.setAttribute("strokecolor", "#666");		line.setAttribute("strokeweight", stroke*2+"px");		this.axisGroup.appendChild(line);		//	y axis		var line=document.createElement("v:line");		var x=dojo.widget.vml.Chart.Plotter.getX(this.properties.axes.y.plotAt, this);		line.setAttribute("from", x+"px,0px");		line.setAttribute("to", x+"px,"+plotHeight+"px");		line.style.position="absolute";		line.style.top="0px";		line.style.left="0px";		line.style.antialias="false";		line.setAttribute("strokecolor", "#666");		line.setAttribute("strokeweight", stroke*2+"px");		this.axisGroup.appendChild(line);				//	labels		var size=10;		//	x axis labels.		var t=document.createElement("div");		t.style.position="absolute";		t.style.top=(this.properties.height-this.properties.padding.bottom)+"px";		t.style.left=this.properties.padding.left+"px";		t.style.fontFamily="sans-serif";		t.style.fontSize=size+"px";		t.innerHTML=dojo.math.round(parseFloat(this.properties.axes.x.range.min),2);		this.vectorNode.appendChild(t);		t=document.createElement("div");		t.style.position="absolute";		t.style.top=(this.properties.height-this.properties.padding.bottom)+"px";		t.style.left=(this.properties.width-this.properties.padding.right-size)+"px";		t.style.fontFamily="sans-serif";		t.style.fontSize=size+"px";		t.innerHTML=dojo.math.round(parseFloat(this.properties.axes.x.range.max),2);		this.vectorNode.appendChild(t);		//	y axis labels.		t=document.createElement("div");		t.style.position="absolute";		t.style.top=(size/2)+"px";		t.style.left="0px";		t.style.width=this.properties.padding.left + "px";		t.style.textAlign="right";		t.style.paddingRight="4px";		t.style.fontFamily="sans-serif";		t.style.fontSize=size+"px";		t.innerHTML=dojo.math.round(parseFloat(this.properties.axes.y.range.max),2);		this.vectorNode.appendChild(t);				t=document.createElement("div");		t.style.position="absolute";		t.style.top=(this.properties.height-this.properties.padding.bottom-size)+"px";		t.style.left="0px";		t.style.width=this.properties.padding.left + "px";		t.style.textAlign="right";		t.style.paddingRight="4px";		t.style.fontFamily="sans-serif";		t.style.fontSize=size+"px";		t.innerHTML=dojo.math.round(parseFloat(this.properties.axes.y.range.min),2);		this.vectorNode.appendChild(t);	},		init:function(){		//	summary		//	Initialize the chart		if(!this.properties.width || !this.properties.height){			var box=dojo.html.getContentBox(this.domNode);			if(!this.properties.width){				this.properties.width=(box.width<32)?this.properties.defaultWidth:box.width;			}			if(!this.properties.height){				this.properties.height=(box.height<32)?this.properties.defaultHeight:box.height;			}		}		//	set up the chart; each is a method so that it can be selectively overridden.		this.drawVectorNode();		this.drawPlotArea();		this.drawDataGroup();		this.drawAxes();		//	this is last.

⌨️ 快捷键说明

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