diff --git a/d3.js b/d3.js index b4c7e98ed96d2..d71f57d52b277 100644 --- a/d3.js +++ b/d3.js @@ -10,7 +10,7 @@ try { d3_style_setProperty.call(this, name, value + "", priority); }; } -d3 = {version: "2.6.0"}; // semver +d3 = {version: "2.6.1"}; // semver var d3_array = d3_arraySlice; // conversion for NodeLists function d3_arrayCopy(pseudoarray) { @@ -977,9 +977,9 @@ function d3_interpolateByName(n) { d3.interpolators = [ d3.interpolateObject, function(a, b) { return (b instanceof Array) && d3.interpolateArray(a, b); }, - function(a, b) { return (typeof b === "string") && d3.interpolateString(a + "", b); }, - function(a, b) { return (typeof b === "string" ? b in d3_rgb_names || /^(#|rgb\(|hsl\()/.test(b) : b instanceof d3_Rgb || b instanceof d3_Hsl) && d3.interpolateRgb(a + "", b); }, - function(a, b) { return (typeof b === "number") && d3.interpolateNumber(+a, b); } + function(a, b) { return (typeof a === "string" || typeof b === "string") && d3.interpolateString(a + "", b + ""); }, + function(a, b) { return (typeof b === "string" ? b in d3_rgb_names || /^(#|rgb\(|hsl\()/.test(b) : b instanceof d3_Rgb || b instanceof d3_Hsl) && d3.interpolateRgb(a, b); }, + function(a, b) { return !isNaN(a = +a) && !isNaN(b = +b) && d3.interpolateNumber(a, b); } ]; function d3_uninterpolateNumber(a, b) { b = b - (a = +a) ? 1 / (b - a) : 0; @@ -2542,7 +2542,7 @@ function d3_scale_log(linear, log) { if (arguments.length < 2) format = d3_scale_logFormat; if (arguments.length < 1) return format; var k = n / scale.ticks().length, - f = log === d3_scale_logn ? (e = -1e-15, Math.floor) : (e = 1e-15, Math.ceil), + f = log === d3_scale_logn ? (e = -1e-12, Math.floor) : (e = 1e-12, Math.ceil), e; return function(d) { return d / pow(f(log(d) + e)) < k ? format(d) : ""; @@ -3646,7 +3646,7 @@ function d3_svg_mousePoint(container, e) { var point = (container.ownerSVGElement || container).createSVGPoint(); if ((d3_mouse_bug44083 < 0) && (window.scrollX || window.scrollY)) { var svg = d3.select(document.body) - .append("svg:svg") + .append("svg") .style("position", "absolute") .style("top", 0) .style("left", 0); @@ -3807,13 +3807,13 @@ d3.svg.axis = function() { // Minor ticks. var subticks = d3_svg_axisSubdivide(scale, ticks, tickSubdivide), subtick = g.selectAll(".minor").data(subticks, String), - subtickEnter = subtick.enter().insert("svg:line", "g").attr("class", "tick minor").style("opacity", 1e-6), + subtickEnter = subtick.enter().insert("line", "g").attr("class", "tick minor").style("opacity", 1e-6), subtickExit = transition(subtick.exit()).style("opacity", 1e-6).remove(), subtickUpdate = transition(subtick).style("opacity", 1); // Major ticks. var tick = g.selectAll("g").data(ticks, String), - tickEnter = tick.enter().insert("svg:g", "path").style("opacity", 1e-6), + tickEnter = tick.enter().insert("g", "path").style("opacity", 1e-6), tickExit = transition(tick.exit()).style("opacity", 1e-6).remove(), tickUpdate = transition(tick).style("opacity", 1), tickTransform; @@ -3821,7 +3821,7 @@ d3.svg.axis = function() { // Domain. var range = d3_scaleRange(scale), path = g.selectAll(".domain").data([0]), - pathEnter = path.enter().append("svg:path").attr("class", "domain"), + pathEnter = path.enter().append("path").attr("class", "domain"), pathUpdate = transition(path); // Stash a snapshot of the new scale, and retrieve the old snapshot. @@ -3829,8 +3829,8 @@ d3.svg.axis = function() { scale0 = this.__chart__ || scale1; this.__chart__ = scale1; - tickEnter.append("svg:line").attr("class", "tick"); - tickEnter.append("svg:text"); + tickEnter.append("line").attr("class", "tick"); + tickEnter.append("text"); tickUpdate.select("text").text(tickFormat); switch (orient) { @@ -3991,19 +3991,19 @@ d3.svg.brush = function() { e; // An invisible, mouseable area for starting a new brush. - bg.enter().append("svg:rect") + bg.enter().append("rect") .attr("class", "background") .style("visibility", "hidden") .style("pointer-events", "all") .style("cursor", "crosshair"); // The visible brush extent; style this as you like! - fg.enter().append("svg:rect") + fg.enter().append("rect") .attr("class", "extent") .style("cursor", "move"); // More invisible rects for resizing the extent. - tz.enter().append("svg:rect") + tz.enter().append("rect") .attr("class", function(d) { return "resize " + d; }) .attr("width", 6) .attr("height", 6) diff --git a/d3.min.js b/d3.min.js index 959b934b7269c..b37f5c9cd1eb6 100644 --- a/d3.min.js +++ b/d3.min.js @@ -1,2 +1,2 @@ -(function(){function e(a){var b=-1,c=a.length,d=[];while(++b=0?a.substring(b):(b=a.length,""),d=[];while(b>0)d.push(a.substring(b-=3,b+3));return d.reverse().join(",")+c}function y(a,b){return{scale:Math.pow(10,(8-b)*3),symbol:a}}function D(a){return function(b){return b<=0?0:b>=1?1:a(b)}}function E(a){return function(b){return 1-a(1-b)}}function F(a){return function(b){return.5*(b<.5?a(2*b):2-a(2-2*b))}}function G(a){return a}function H(a){return function(b){return Math.pow(b,a)}}function I(a){return 1-Math.cos(a*Math.PI/2)}function J(a){return Math.pow(2,10*(a-1))}function K(a){return 1-Math.sqrt(1-a*a)}function L(a,b){var c;return arguments.length<2&&(b=.45),arguments.length<1?(a=1,c=b/4):c=b/(2*Math.PI)*Math.asin(1/a),function(d){return 1+a*Math.pow(2,10*-d)*Math.sin((d-c)*2*Math.PI/b)}}function M(a){return a||(a=1.70158),function(b){return b*b*((a+1)*b-a)}}function N(a){return a<1/2.75?7.5625*a*a:a<2/2.75?7.5625*(a-=1.5/2.75)*a+.75:a<2.5/2.75?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375}function O(){d3.event.stopPropagation(),d3.event.preventDefault()}function Q(a){return a=="transform"?d3.interpolateTransform:d3.interpolate}function R(a,b){return b=b-(a=+a)?1/(b-a):0,function(c){return(c-a)*b}}function S(a,b){return b=b-(a=+a)?1/(b-a):0,function(c){return Math.max(0,Math.min(1,(c-a)*b))}}function T(a,b,c){return new U(a,b,c)}function U(a,b,c){this.r=a,this.g=b,this.b=c}function V(a){return a<16?"0"+Math.max(0,a).toString(16):Math.min(255,a).toString(16)}function W(a,b,c){var d=0,e=0,f=0,g,h,i;g=/([a-z]+)\((.*)\)/i.exec(a);if(g){h=g[2].split(",");switch(g[1]){case"hsl":return c(parseFloat(h[0]),parseFloat(h[1])/100,parseFloat(h[2])/100);case"rgb":return b(Y(h[0]),Y(h[1]),Y(h[2]))}}return(i=Z[a])?b(i.r,i.g,i.b):(a!=null&&a.charAt(0)==="#"&&(a.length===4?(d=a.charAt(1),d+=d,e=a.charAt(2),e+=e,f=a.charAt(3),f+=f):a.length===7&&(d=a.substring(1,3),e=a.substring(3,5),f=a.substring(5,7)),d=parseInt(d,16),e=parseInt(e,16),f=parseInt(f,16)),b(d,e,f))}function X(a,b,c){var d=Math.min(a/=255,b/=255,c/=255),e=Math.max(a,b,c),f=e-d,g,h,i=(e+d)/2;return f?(h=i<.5?f/(e+d):f/(2-e-d),a==e?g=(b-c)/f+(b360?a-=360:a<0&&(a+=360),a<60?d+(e-d)*a/60:a<180?e:a<240?d+(e-d)*(240-a)/60:d}function g(a){return Math.round(f(a)*255)}var d,e;return a%=360,a<0&&(a+=360),b=b<0?0:b>1?1:b,c=c<0?0:c>1?1:c,e=c<=.5?c*(1+b):c+b-c*b,d=2*c-e,T(g(a+120),g(a),g(a-120))}function bc(a){return h(a,bf),a}function bg(a){return function(){return bd(a,this)}}function bh(a){return function(){return be(a,this)}}function bj(a,b){function f(){if(b=this.classList)return b.add(a);var b=this.className,d=b.baseVal!=null,e=d?b.baseVal:b;c.lastIndex=0,c.test(e)||(e=n(e+" "+a),d?b.baseVal=e:this.className=e)}function g(){if(b=this.classList)return b.remove(a);var b=this.className,d=b.baseVal!=null,e=d?b.baseVal:b;e=n(e.replace(c," ")),d?b.baseVal=e:this.className=e}function h(){(b.apply(this,arguments)?f:g).call(this)}var c=new RegExp("(^|\\s+)"+d3.requote(a)+"(\\s+|$)","g");if(arguments.length<2){var d=this.node();if(e=d.classList)return e.contains(a);var e=d.className;return c.lastIndex=0,c.test(e.baseVal!=null?e.baseVal:e)}return this.each(typeof b=="function"?h:b?f:g)}function bk(a){return{__data__:a}}function bl(a){return arguments.length||(a=d3.ascending),function(b,c){return a(b&&b.__data__,c&&c.__data__)}}function bn(a){return h(a,bo),a}function bp(a,b,c){h(a,bt);var d={},e=d3.dispatch("start","end"),f=bw;return a.id=b,a.time=c,a.tween=function(b,c){return arguments.length<2?d[b]:(c==null?delete d[b]:d[b]=c,a)},a.ease=function(b){return arguments.length?(f=typeof b=="function"?b:d3.ease.apply(d3,arguments),a):f},a.each=function(b,c){return arguments.length<2?bx.call(a,b):(e.on(b,c),a)},d3.timer(function(g){return a.each(function(h,i,j){function p(a){if(o.active>b)return r();o.active=b;for(var f in d)(f=d[f].call(l,h,i))&&k.push(f);return e.start.call(l,h,i),q(a)||d3.timer(q,0,c),1}function q(a){if(o.active!==b)return r();var c=(a-m)/n,d=f(c),g=k.length;while(g>0)k[--g].call(l,d);if(c>=1)return r(),bv=b,e.end.call(l,h,i),bv=0,1}function r(){return--o.count||delete l.__transition__,1}var k=[],l=this,m=a[j][i].delay,n=a[j][i].duration,o=l.__transition__||(l.__transition__={active:0,count:0});++o.count,m<=g?p(g):d3.timer(p,m,c)}),1},0,c),a}function br(a,b,c){return c!=""&&bq}function bs(a,b){function d(a,d,e){var f=b.call(this,a,d);return f==null?e!=""&&bq:e!=f&&c(e,f)}function e(a,d,e){return e!=b&&c(e,b)}var c=Q(a);return typeof b=="function"?d:b==null?br:(b+="",e)}function bx(a){for(var b=0,c=this.length;b=c.delay&&(c.flush=c.callback(a)),c=c.next;var d=bC()-b;d>24?(isFinite(d)&&(clearTimeout(bA),bA=setTimeout(bB,d)),bz=0):(bz=1,bD(bB))}function bC(){var a=null,b=by,c=Infinity;while(b)b.flush?b=a?a.next=b.next:by=b.next:(c=Math.min(c,b.then+b.delay),b=(a=b).next);return c}function bE(a){var b=[a.a,a.b],c=[a.c,a.d],d=bG(b),e=bF(b,c),f=bG(bH(c,b,-e))||0;b[0]*c[1]0;j--)e.push(c(f)*j)}else{for(;fi;g--);e=e.slice(f,g)}return e},d.tickFormat=function(a,e){arguments.length<2&&(e=bZ);if(arguments.length<1)return e;var f=a/d.ticks().length,g=b===b_?(h=-1e-15,Math.floor):(h=1e-15,Math.ceil),h;return function(a){return a/c(g(b(a)+h))1){h=b[1],f=a[i],i++,d+="C"+(e[0]+g[0])+","+(e[1]+g[1])+","+(f[0]-h[0])+","+(f[1]-h[1])+","+f[0]+","+f[1];for(var j=2;j9&&(f=c*3/Math.sqrt(f),g[h]=f*d,g[h+1]=f*e));h=-1;while(++h<=i)f=(a[Math.min(i,h+1)][0]-a[Math.max(0,h-1)][0])/(6*(1+g[h]*g[h])),b.push([f||0,g[h]*f||0]);return b}function cO(a){return a.length<3?cu(a):a[0]+cA(a,cN(a))}function cP(a){var b,c=-1,d=a.length,e,f;while(++c1){var d=bM(a.domain()),e,f=-1,g=b.length,h=(b[1]-b[0])/++c,i,j;while(++f0;)(j=+b[f]-i*h)>=d[0]&&e.push(j);for(--f,i=0;++ib?1:a>=b?0:NaN},d3.descending=function(a,b){return ba?1:b>=a?0:NaN},d3.mean=function(a,b){var c=a.length,d,e=0,f=-1,g=0;if(arguments.length===1)while(++f1&&(a=a.map(b)),a=a.filter(k),a.length?d3.quantile(a.sort(d3.ascending),.5):undefined},d3.min=function(a,b){var c=-1,d=a.length,e,f;if(arguments.length===1){while(++cf&&(e=f)}else{while(++cf&&(e=f)}return e},d3.max=function(a,b){var c=-1,d=a.length,e,f;if(arguments.length===1){while(++ce&&(e=f)}else{while(++ce&&(e=f)}return e},d3.extent=function(a,b){var c=-1,d=a.length,e,f,g;if(arguments.length===1){while(++cf&&(e=f),gf&&(e=f),g1);return a+b*c*Math.sqrt(-2*Math.log(e)/e)}}},d3.sum=function(a,b){var c=0,d=a.length,e,f=-1;if(arguments.length===1)while(++f>1;a[e]>1;b0&&(e=f);return e},d3.last=function(a,b){var c=0,d=a.length,e=a[0],f;arguments.length===1&&(b=d3.ascending);while(++c=b.length)return e?e.call(a,c):d?c.sort(d):c;var h=-1,i=c.length,j=b[g++],k,l,m={};while(++h=b.length)return a;var e=[],f=c[d++],h;for(h in a)e.push({key:h,values:g(a[h],d)});return f&&e.sort(function(a,b){return f(a.key,b.key)}),e}var a={},b=[],c=[],d,e;return a.map=function(a){return f(a,0)},a.entries=function(a){return g(f(a,0),0)},a.key=function(c){return b.push(c),a},a.sortKeys=function(d){return c[b.length-1]=d,a},a.sortValues=function(b){return d=b,a},a.rollup=function(b){return e=b,a},a},d3.keys=function(a){var b=[];for(var c in a)b.push(c);return b},d3.values=function(a){var b=[];for(var c in a)b.push(a[c]);return b},d3.entries=function(a){var b=[];for(var c in a)b.push({key:c,value:a[c]});return b},d3.permute=function(a,b){var c=[],d=-1,e=b.length;while(++db)d.push(f);else while((f=a+c*++e)0&&(d=a.substring(c+1),a=a.substring(0,c)),arguments.length<2?this[a].on(d):(this[a].on(d,b),this)},d3.format=function(a){var b=s.exec(a),c=b[1]||" ",d=b[3]||"",e=b[5],f=+b[6],g=b[7],h=b[8],i=b[9],j=1,k="",l=!1;h&&(h=+h.substring(1)),e&&(c="0",g&&(f-=Math.floor((f-1)/4)));switch(i){case"n":g=!0,i="g";break;case"%":j=100,k="%",i="f";break;case"p":j=100,k="%",i="r";break;case"d":l=!0,h=0;break;case"s":j=-1,i="r"}return i=="r"&&!h&&(i="g"),i=t[i]||v,function(a){if(l&&a%1)return"";var b=a<0&&(a=-a)?"−":d;if(j<0){var m=d3.formatPrefix(a,h);a*=m.scale,k=m.symbol}else a*=j;a=i(a,h);if(e){var n=a.length+b.length;n=^]))?([+\- ])?(#)?(0)?([0-9]+)?(,)?(\.[0-9]+)?([a-zA-Z%])?/,t={g:function(a,b){return a.toPrecision(b)},e:function(a,b){return a.toExponential(b)},f:function(a,b){return a.toFixed(b)},r:function(a,b){return d3.round(a,b=u(a,b)).toFixed(Math.max(0,Math.min(20,b)))}},x=["y","z","a","f","p","n","μ","m","","k","M","G","T","P","E","Z","Y"].map(y);d3.formatPrefix=function(a,b){var c=0;return a&&(a<0&&(a*=-1),b&&(a=d3.round(a,u(a,b))),c=1+Math.floor(1e-12+Math.log(a)/Math.LN10),c=Math.max(-24,Math.min(24,Math.floor((c<=0?c+1:c-1)/3)*3))),x[8+c/3]};var z=H(2),A=H(3),B={linear:function(){return G},poly:H,quad:function(){return z},cubic:function(){return A},sin:function(){return I},exp:function(){return J},circle:function(){return K},elastic:L,back:M,bounce:function(){return N}},C={"in":function(a){return a},out:E,"in-out":F,"out-in":function(a){return F(E(a))}};d3.ease=function(a){var b=a.indexOf("-"),c=b>=0?a.substring(0,b):a,d=b>=0?a.substring(b+1):"in";return D(C[d](B[c].apply(null,Array.prototype.slice.call(arguments,1))))},d3.event=null,d3.interpolate=function(a,b){var c=d3.interpolators.length,d;while(--c>=0&&!(d=d3.interpolators[c](a,b)));return d},d3.interpolateNumber=function(a,b){return b-=a,function(c){return a+b*c}},d3.interpolateRound=function(a,b){return b-=a,function(c){return Math.round(a+b*c)}},d3.interpolateString=function(a,b){var c,d,e,f=0,g=0,h=[],i=[],j,k;P.lastIndex=0;for(d=0;c=P.exec(b);++d)c.index&&h.push(b.substring(f,g=c.index)),i.push({i:h.length,x:c[0]}),h.push(null),f=P.lastIndex;f1){while(++e0&&(a=a.substring(0,e)),arguments.length<2?(e=this.node()[d])&&e._:this.each(function(e,f){function h(a){var c=d3.event;d3.event=a;try{b.call(g,g.__data__,f)}finally{d3.event=c}}var g=this;g[d]&&g.removeEventListener(a,g[d],c),b&&g.addEventListener(a,g[d]=h,c),h._=b})},bf.each=function(a){for(var b=-1,c=this.length;++b=ck?e?"M0,"+f+"A"+f+","+f+" 0 1,1 0,"+ -f+"A"+f+","+f+" 0 1,1 0,"+f+"M0,"+e+"A"+e+","+e+" 0 1,0 0,"+ -e+"A"+e+","+e+" 0 1,0 0,"+e+"Z":"M0,"+f+"A"+f+","+f+" 0 1,1 0,"+ -f+"A"+f+","+f+" 0 1,1 0,"+f+"Z":e?"M"+f*k+","+f*l+"A"+f+","+f+" 0 "+j+",1 "+f*m+","+f*n+"L"+e*m+","+e*n+"A"+e+","+e+" 0 "+j+",0 "+e*k+","+e*l+"Z":"M"+f*k+","+f*l+"A"+f+","+f+" 0 "+j+",1 "+f*m+","+f*n+"L0,0"+"Z"}var a=cl,b=cm,c=cn,d=co;return e.innerRadius=function(b){return arguments.length?(a=d3.functor(b),e):a},e.outerRadius=function(a){return arguments.length?(b=d3.functor(a),e):b},e.startAngle=function(a){return arguments.length?(c=d3.functor(a),e):c},e.endAngle=function(a){return arguments.length?(d=d3.functor(a),e):d},e.centroid=function(){var e=(a.apply(this,arguments)+b.apply(this,arguments))/2,f=(c.apply(this,arguments)+d.apply(this,arguments))/2+cj;return[Math.cos(f)*e,Math.sin(f)*e]},e};var cj=-Math.PI/2,ck=2*Math.PI-1e-6;d3.svg.line=function(){return cp(Object)};var ct={linear:cu,"step-before":cv,"step-after":cw,basis:cC,"basis-open":cD,"basis-closed":cE,bundle:cF,cardinal:cz,"cardinal-open":cx,"cardinal-closed":cy,monotone:cO},cH=[0,2/3,1/3,0],cI=[0,1/3,2/3,0],cJ=[0,1/6,2/3,1/6];d3.svg.line.radial=function(){var a=cp(cP);return a.radius=a.x,delete a.x,a.angle=a.y,delete a.y,a},cv.reverse=cw,cw.reverse=cv,d3.svg.area=function(){return cQ(Object)},d3.svg.area.radial=function(){var a=cQ(cP);return a.radius=a.x,delete a.x,a.innerRadius=a.x0,delete a.x0,a.outerRadius=a.x1,delete a.x1,a.angle=a.y,delete a.y,a.startAngle=a.y0,delete a.y0,a.endAngle=a.y1,delete a.y1,a},d3.svg.chord=function(){function f(c,d){var e=g(this,a,c,d),f=g(this,b,c,d);return"M"+e.p0+i(e.r,e.p1)+(h(e,f)?j(e.r,e.p1,e.r,e.p0):j(e.r,e.p1,f.r,f.p0)+i(f.r,f.p1)+j(f.r,f.p1,e.r,e.p0))+"Z"}function g(a,b,f,g){var h=b.call(a,f,g),i=c.call(a,h,g),j=d.call(a,h,g)+cj,k=e.call(a,h,g)+cj;return{r:i,a0:j,a1:k,p0:[i*Math.cos(j),i*Math.sin(j)],p1:[i*Math.cos(k),i*Math.sin(k)]}}function h(a,b){return a.a0==b.a0&&a.a1==b.a1}function i(a,b){return"A"+a+","+a+" 0 0,1 "+b}function j(a,b,c,d){return"Q 0,0 "+d}var a=cT,b=cU,c=cV,d=cn,e=co;return f.radius=function(a){return arguments.length?(c=d3.functor(a),f):c},f.source=function(b){return arguments.length?(a=d3.functor(b),f):a},f.target=function(a){return arguments.length?(b=d3.functor(a),f):b},f.startAngle=function(a){return arguments.length?(d=d3.functor(a),f):d},f.endAngle=function(a){return arguments.length?(e=d3.functor(a),f):e},f},d3.svg.diagonal=function(){function d(d,e){var f=a.call(this,d,e),g=b.call(this,d,e),h=(f.y+g.y)/2,i=[f,{x:f.x,y:h},{x:g.x,y:h},g];return i=i.map(c),"M"+i[0]+"C"+i[1]+" "+i[2]+" "+i[3]}var a=cT,b=cU,c=cY;return d.source=function(b){return arguments.length?(a=d3.functor(b),d):a},d.target=function(a){return arguments.length?(b=d3.functor(a),d):b},d.projection=function(a){return arguments.length?(c=a,d):c},d},d3.svg.diagonal.radial=function(){var a=d3.svg.diagonal(),b=cY,c=a.projection;return a.projection=function(a){return arguments.length?c(cZ(b=a)):b},a},d3.svg.mouse=function(a){return c_(a,d3.event)};var c$=/WebKit/.test(navigator.userAgent)?-1:0;d3.svg.touches=function(a,b){return arguments.length<2&&(b=d3.event.touches),b?d(b).map(function(b){var c=c_(a,b);return c.identifier=b.identifier,c}):[]},d3.svg.symbol=function(){function c(c,d){return(dc[a.call(this,c,d)]||dc.circle)(b.call(this,c,d))}var a=db,b=da;return c.type=function(b){return arguments.length?(a=d3.functor(b),c):a},c.size=function(a){return arguments.length?(b=d3.functor(a),c):b},c};var dc={circle:function(a){var b=Math.sqrt(a/Math.PI);return"M0,"+b+"A"+b+","+b+" 0 1,1 0,"+ -b+"A"+b+","+b+" 0 1,1 0,"+b+"Z"},cross:function(a){var b=Math.sqrt(a/5)/2;return"M"+ -3*b+","+ -b+"H"+ -b+"V"+ -3*b+"H"+b+"V"+ -b+"H"+3*b+"V"+b+"H"+b+"V"+3*b+"H"+ -b+"V"+b+"H"+ -3*b+"Z"},diamond:function(a){var b=Math.sqrt(a/(2*de)),c=b*de;return"M0,"+ -b+"L"+c+",0"+" 0,"+b+" "+ -c+",0"+"Z"},square:function(a){var b=Math.sqrt(a)/2;return"M"+ -b+","+ -b+"L"+b+","+ -b+" "+b+","+b+" "+ -b+","+b+"Z"},"triangle-down":function(a){var b=Math.sqrt(a/dd),c=b*dd/2;return"M0,"+c+"L"+b+","+ -c+" "+ -b+","+ -c+"Z"},"triangle-up":function(a){var b=Math.sqrt(a/dd),c=b*dd/2;return"M0,"+ -c+"L"+b+","+c+" "+ -b+","+c+"Z"}};d3.svg.symbolTypes=d3.keys(dc);var dd=Math.sqrt(3),de=Math.tan(30*Math.PI/180);d3.svg.axis=function(){function j(j){j.each(function(k,l,m){var n=d3.select(this),o=j.delay?function(a){var b=bv;try{return bv=j.id,a.transition().delay(j[m][l].delay).duration(j[m][l].duration).ease(j.ease())}finally{bv=b}}:Object,p=a.ticks?a.ticks.apply(a,g):a.domain(),q=h==null?a.tickFormat?a.tickFormat.apply(a,g):String:h,r=dh(a,p,i),s=n.selectAll(".minor").data(r,String),t=s.enter().insert("svg:line","g").attr("class","tick minor").style("opacity",1e-6),u=o(s.exit()).style("opacity",1e-6).remove(),v=o(s).style("opacity",1),w=n.selectAll("g").data(p,String),x=w.enter().insert("svg:g","path").style("opacity",1e-6),y=o(w.exit()).style("opacity",1e-6).remove(),z=o(w).style("opacity",1),A,B=bN(a),C=n.selectAll(".domain").data([0]),D=C.enter().append("svg:path").attr("class","domain"),E=o(C),F=a.copy(),G=this.__chart__||F;this.__chart__=F,x.append("svg:line").attr("class","tick"),x.append("svg:text"),z.select("text").text(q);switch(b){case"bottom":A=df,v.attr("x2",0).attr("y2",d),z.select("line").attr("x2",0).attr("y2",c),z.select("text").attr("x",0).attr("y",Math.max(c,0)+f).attr("dy",".71em").attr("text-anchor","middle"),E.attr("d","M"+B[0]+","+e+"V0H"+B[1]+"V"+e);break;case"top":A=df,v.attr("x2",0).attr("y2",-d),z.select("line").attr("x2",0).attr("y2",-c),z.select("text").attr("x",0).attr("y",-(Math.max(c,0)+f)).attr("dy","0em").attr("text-anchor","middle"),E.attr("d","M"+B[0]+","+ -e+"V0H"+B[1]+"V"+ -e);break;case"left":A=dg,v.attr("x2",-d).attr("y2",0),z.select("line").attr("x2",-c).attr("y2",0),z.select("text").attr("x",-(Math.max(c,0)+f)).attr("y",0).attr("dy",".32em").attr("text-anchor","end"),E.attr("d","M"+ -e+","+B[0]+"H0V"+B[1]+"H"+ -e);break;case"right":A=dg,v.attr("x2",d).attr("y2",0),z.select("line").attr("x2",c).attr("y2",0),z.select("text").attr("x",Math.max(c,0)+f).attr("y",0).attr("dy",".32em").attr("text-anchor","start"),E.attr("d","M"+e+","+B[0]+"H0V"+B[1]+"H"+e)}if(a.ticks)x.call(A,G),z.call(A,F),y.call(A,F),t.call(A,G),v.call(A,F),u.call(A,F);else{var H=F.rangeBand()/2,I=function(a){return F(a)+H};x.call(A,I),z.call(A,I)}})}var a=d3.scale.linear(),b="bottom",c=6,d=6,e=6,f=3,g=[10],h,i=0;return j.scale=function(b){return arguments.length?(a=b,j):a},j.orient=function(a){return arguments.length?(b=a,j):b},j.ticks=function(){return arguments.length?(g=arguments,j):g},j.tickFormat=function(a){return arguments.length?(h=a,j):h},j.tickSize=function(a,b,f){if(!arguments.length)return c;var g=arguments.length-1;return c=+a,d=g>1?+b:c,e=g>0?+arguments[g]:c,j},j.tickPadding=function(a){return arguments.length?(f=+a,j):f},j.tickSubdivide=function(a){return arguments.length?(i=+a,j):i},j},d3.svg.brush=function(){function e(a){var g=b&&c?["n","e","s","w","nw","ne","se","sw"]:b?["e","w"]:c?["n","s"]:[];a.each(function(){var a=d3.select(this).on("mousedown.brush",f),h=a.selectAll(".background").data([,]),i=a.selectAll(".extent").data([,]),j=a.selectAll(".resize").data(g,String),k;h.enter().append("svg:rect").attr("class","background").style("visibility","hidden").style("pointer-events","all").style("cursor","crosshair"),i.enter().append("svg:rect").attr("class","extent").style("cursor","move"),j.enter().append("svg:rect").attr("class",function(a){return"resize "+a}).attr("width",6).attr("height",6).style("visibility","hidden").style("pointer-events",e.empty()?"none":"all").style("cursor",function(a){return dA[a]}),j.exit().remove(),b&&(k=bN(b),h.attr("x",k[0]).attr("width",k[1]-k[0]),dt(a,d)),c&&(k=bN(c),h.attr("y",k[0]).attr("height",k[1]-k[0]),du(a,d))})}function f(){var a=d3.select(d3.event.target);di=e,dk=this,dn=d,ds=d3.svg.mouse(dk),(dp=a.classed("extent"))?(ds[0]=d[0][0]-ds[0],ds[1]=d[0][1]-ds[1]):a.classed("resize")?(dq=d3.event.target.__data__,ds[0]=d[+/w$/.test(dq)][0],ds[1]=d[+/^n/.test(dq)][1]):d3.event.altKey&&(dr=ds.slice()),dl=!/^(n|s)$/.test(dq)&&b,dm=!/^(e|w)$/.test(dq)&&c,dj=g(this,arguments),dj("brushstart"),dx(),O()}function g(b,c){return function(d){var f=d3.event;try{d3.event={type:d,target:e},a[d].apply(b,c)}finally{d3.event=f}}}var a=d3.dispatch("brushstart","brush","brushend"),b,c,d=[[0,0],[0,0]];return e.x=function(a){return arguments.length?(b=a,e):b},e.y=function(a){return arguments.length?(c=a,e):c},e.extent=function(a){var f,g,h,i,j;return arguments.length?(b&&(f=a[0],g=a[1],c&&(f=f[0],g=g[0]),b.invert&&(f=b(f),g=b(g)),g=0?a.substring(b):(b=a.length,""),d=[];while(b>0)d.push(a.substring(b-=3,b+3));return d.reverse().join(",")+c}function y(a,b){return{scale:Math.pow(10,(8-b)*3),symbol:a}}function D(a){return function(b){return b<=0?0:b>=1?1:a(b)}}function E(a){return function(b){return 1-a(1-b)}}function F(a){return function(b){return.5*(b<.5?a(2*b):2-a(2-2*b))}}function G(a){return a}function H(a){return function(b){return Math.pow(b,a)}}function I(a){return 1-Math.cos(a*Math.PI/2)}function J(a){return Math.pow(2,10*(a-1))}function K(a){return 1-Math.sqrt(1-a*a)}function L(a,b){var c;return arguments.length<2&&(b=.45),arguments.length<1?(a=1,c=b/4):c=b/(2*Math.PI)*Math.asin(1/a),function(d){return 1+a*Math.pow(2,10*-d)*Math.sin((d-c)*2*Math.PI/b)}}function M(a){return a||(a=1.70158),function(b){return b*b*((a+1)*b-a)}}function N(a){return a<1/2.75?7.5625*a*a:a<2/2.75?7.5625*(a-=1.5/2.75)*a+.75:a<2.5/2.75?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375}function O(){d3.event.stopPropagation(),d3.event.preventDefault()}function Q(a){return a=="transform"?d3.interpolateTransform:d3.interpolate}function R(a,b){return b=b-(a=+a)?1/(b-a):0,function(c){return(c-a)*b}}function S(a,b){return b=b-(a=+a)?1/(b-a):0,function(c){return Math.max(0,Math.min(1,(c-a)*b))}}function T(a,b,c){return new U(a,b,c)}function U(a,b,c){this.r=a,this.g=b,this.b=c}function V(a){return a<16?"0"+Math.max(0,a).toString(16):Math.min(255,a).toString(16)}function W(a,b,c){var d=0,e=0,f=0,g,h,i;g=/([a-z]+)\((.*)\)/i.exec(a);if(g){h=g[2].split(",");switch(g[1]){case"hsl":return c(parseFloat(h[0]),parseFloat(h[1])/100,parseFloat(h[2])/100);case"rgb":return b(Y(h[0]),Y(h[1]),Y(h[2]))}}return(i=Z[a])?b(i.r,i.g,i.b):(a!=null&&a.charAt(0)==="#"&&(a.length===4?(d=a.charAt(1),d+=d,e=a.charAt(2),e+=e,f=a.charAt(3),f+=f):a.length===7&&(d=a.substring(1,3),e=a.substring(3,5),f=a.substring(5,7)),d=parseInt(d,16),e=parseInt(e,16),f=parseInt(f,16)),b(d,e,f))}function X(a,b,c){var d=Math.min(a/=255,b/=255,c/=255),e=Math.max(a,b,c),f=e-d,g,h,i=(e+d)/2;return f?(h=i<.5?f/(e+d):f/(2-e-d),a==e?g=(b-c)/f+(b360?a-=360:a<0&&(a+=360),a<60?d+(e-d)*a/60:a<180?e:a<240?d+(e-d)*(240-a)/60:d}function g(a){return Math.round(f(a)*255)}var d,e;return a%=360,a<0&&(a+=360),b=b<0?0:b>1?1:b,c=c<0?0:c>1?1:c,e=c<=.5?c*(1+b):c+b-c*b,d=2*c-e,T(g(a+120),g(a),g(a-120))}function bc(a){return h(a,bf),a}function bg(a){return function(){return bd(a,this)}}function bh(a){return function(){return be(a,this)}}function bj(a,b){function f(){if(b=this.classList)return b.add(a);var b=this.className,d=b.baseVal!=null,e=d?b.baseVal:b;c.lastIndex=0,c.test(e)||(e=n(e+" "+a),d?b.baseVal=e:this.className=e)}function g(){if(b=this.classList)return b.remove(a);var b=this.className,d=b.baseVal!=null,e=d?b.baseVal:b;e=n(e.replace(c," ")),d?b.baseVal=e:this.className=e}function h(){(b.apply(this,arguments)?f:g).call(this)}var c=new RegExp("(^|\\s+)"+d3.requote(a)+"(\\s+|$)","g");if(arguments.length<2){var d=this.node();if(e=d.classList)return e.contains(a);var e=d.className;return c.lastIndex=0,c.test(e.baseVal!=null?e.baseVal:e)}return this.each(typeof b=="function"?h:b?f:g)}function bk(a){return{__data__:a}}function bl(a){return arguments.length||(a=d3.ascending),function(b,c){return a(b&&b.__data__,c&&c.__data__)}}function bn(a){return h(a,bo),a}function bp(a,b,c){h(a,bt);var d={},e=d3.dispatch("start","end"),f=bw;return a.id=b,a.time=c,a.tween=function(b,c){return arguments.length<2?d[b]:(c==null?delete d[b]:d[b]=c,a)},a.ease=function(b){return arguments.length?(f=typeof b=="function"?b:d3.ease.apply(d3,arguments),a):f},a.each=function(b,c){return arguments.length<2?bx.call(a,b):(e.on(b,c),a)},d3.timer(function(g){return a.each(function(h,i,j){function p(a){if(o.active>b)return r();o.active=b;for(var f in d)(f=d[f].call(l,h,i))&&k.push(f);return e.start.call(l,h,i),q(a)||d3.timer(q,0,c),1}function q(a){if(o.active!==b)return r();var c=(a-m)/n,d=f(c),g=k.length;while(g>0)k[--g].call(l,d);if(c>=1)return r(),bv=b,e.end.call(l,h,i),bv=0,1}function r(){return--o.count||delete l.__transition__,1}var k=[],l=this,m=a[j][i].delay,n=a[j][i].duration,o=l.__transition__||(l.__transition__={active:0,count:0});++o.count,m<=g?p(g):d3.timer(p,m,c)}),1},0,c),a}function br(a,b,c){return c!=""&&bq}function bs(a,b){function d(a,d,e){var f=b.call(this,a,d);return f==null?e!=""&&bq:e!=f&&c(e,f)}function e(a,d,e){return e!=b&&c(e,b)}var c=Q(a);return typeof b=="function"?d:b==null?br:(b+="",e)}function bx(a){for(var b=0,c=this.length;b=c.delay&&(c.flush=c.callback(a)),c=c.next;var d=bC()-b;d>24?(isFinite(d)&&(clearTimeout(bA),bA=setTimeout(bB,d)),bz=0):(bz=1,bD(bB))}function bC(){var a=null,b=by,c=Infinity;while(b)b.flush?b=a?a.next=b.next:by=b.next:(c=Math.min(c,b.then+b.delay),b=(a=b).next);return c}function bE(a){var b=[a.a,a.b],c=[a.c,a.d],d=bG(b),e=bF(b,c),f=bG(bH(c,b,-e))||0;b[0]*c[1]0;j--)e.push(c(f)*j)}else{for(;fi;g--);e=e.slice(f,g)}return e},d.tickFormat=function(a,e){arguments.length<2&&(e=bZ);if(arguments.length<1)return e;var f=a/d.ticks().length,g=b===b_?(h=-1e-12,Math.floor):(h=1e-12,Math.ceil),h;return function(a){return a/c(g(b(a)+h))1){h=b[1],f=a[i],i++,d+="C"+(e[0]+g[0])+","+(e[1]+g[1])+","+(f[0]-h[0])+","+(f[1]-h[1])+","+f[0]+","+f[1];for(var j=2;j9&&(f=c*3/Math.sqrt(f),g[h]=f*d,g[h+1]=f*e));h=-1;while(++h<=i)f=(a[Math.min(i,h+1)][0]-a[Math.max(0,h-1)][0])/(6*(1+g[h]*g[h])),b.push([f||0,g[h]*f||0]);return b}function cO(a){return a.length<3?cu(a):a[0]+cA(a,cN(a))}function cP(a){var b,c=-1,d=a.length,e,f;while(++c1){var d=bM(a.domain()),e,f=-1,g=b.length,h=(b[1]-b[0])/++c,i,j;while(++f0;)(j=+b[f]-i*h)>=d[0]&&e.push(j);for(--f,i=0;++ib?1:a>=b?0:NaN},d3.descending=function(a,b){return ba?1:b>=a?0:NaN},d3.mean=function(a,b){var c=a.length,d,e=0,f=-1,g=0;if(arguments.length===1)while(++f1&&(a=a.map(b)),a=a.filter(k),a.length?d3.quantile(a.sort(d3.ascending),.5):undefined},d3.min=function(a,b){var c=-1,d=a.length,e,f;if(arguments.length===1){while(++cf&&(e=f)}else{while(++cf&&(e=f)}return e},d3.max=function(a,b){var c=-1,d=a.length,e,f;if(arguments.length===1){while(++ce&&(e=f)}else{while(++ce&&(e=f)}return e},d3.extent=function(a,b){var c=-1,d=a.length,e,f,g;if(arguments.length===1){while(++cf&&(e=f),gf&&(e=f),g1);return a+b*c*Math.sqrt(-2*Math.log(e)/e)}}},d3.sum=function(a,b){var c=0,d=a.length,e,f=-1;if(arguments.length===1)while(++f>1;a[e]>1;b0&&(e=f);return e},d3.last=function(a,b){var c=0,d=a.length,e=a[0],f;arguments.length===1&&(b=d3.ascending);while(++c=b.length)return e?e.call(a,c):d?c.sort(d):c;var h=-1,i=c.length,j=b[g++],k,l,m={};while(++h=b.length)return a;var e=[],f=c[d++],h;for(h in a)e.push({key:h,values:g(a[h],d)});return f&&e.sort(function(a,b){return f(a.key,b.key)}),e}var a={},b=[],c=[],d,e;return a.map=function(a){return f(a,0)},a.entries=function(a){return g(f(a,0),0)},a.key=function(c){return b.push(c),a},a.sortKeys=function(d){return c[b.length-1]=d,a},a.sortValues=function(b){return d=b,a},a.rollup=function(b){return e=b,a},a},d3.keys=function(a){var b=[];for(var c in a)b.push(c);return b},d3.values=function(a){var b=[];for(var c in a)b.push(a[c]);return b},d3.entries=function(a){var b=[];for(var c in a)b.push({key:c,value:a[c]});return b},d3.permute=function(a,b){var c=[],d=-1,e=b.length;while(++db)d.push(f);else while((f=a+c*++e)0&&(d=a.substring(c+1),a=a.substring(0,c)),arguments.length<2?this[a].on(d):(this[a].on(d,b),this)},d3.format=function(a){var b=s.exec(a),c=b[1]||" ",d=b[3]||"",e=b[5],f=+b[6],g=b[7],h=b[8],i=b[9],j=1,k="",l=!1;h&&(h=+h.substring(1)),e&&(c="0",g&&(f-=Math.floor((f-1)/4)));switch(i){case"n":g=!0,i="g";break;case"%":j=100,k="%",i="f";break;case"p":j=100,k="%",i="r";break;case"d":l=!0,h=0;break;case"s":j=-1,i="r"}return i=="r"&&!h&&(i="g"),i=t[i]||v,function(a){if(l&&a%1)return"";var b=a<0&&(a=-a)?"−":d;if(j<0){var m=d3.formatPrefix(a,h);a*=m.scale,k=m.symbol}else a*=j;a=i(a,h);if(e){var n=a.length+b.length;n=^]))?([+\- ])?(#)?(0)?([0-9]+)?(,)?(\.[0-9]+)?([a-zA-Z%])?/,t={g:function(a,b){return a.toPrecision(b)},e:function(a,b){return a.toExponential(b)},f:function(a,b){return a.toFixed(b)},r:function(a,b){return d3.round(a,b=u(a,b)).toFixed(Math.max(0,Math.min(20,b)))}},x=["y","z","a","f","p","n","μ","m","","k","M","G","T","P","E","Z","Y"].map(y);d3.formatPrefix=function(a,b){var c=0;return a&&(a<0&&(a*=-1),b&&(a=d3.round(a,u(a,b))),c=1+Math.floor(1e-12+Math.log(a)/Math.LN10),c=Math.max(-24,Math.min(24,Math.floor((c<=0?c+1:c-1)/3)*3))),x[8+c/3]};var z=H(2),A=H(3),B={linear:function(){return G},poly:H,quad:function(){return z},cubic:function(){return A},sin:function(){return I},exp:function(){return J},circle:function(){return K},elastic:L,back:M,bounce:function(){return N}},C={"in":function(a){return a},out:E,"in-out":F,"out-in":function(a){return F(E(a))}};d3.ease=function(a){var b=a.indexOf("-"),c=b>=0?a.substring(0,b):a,d=b>=0?a.substring(b+1):"in";return D(C[d](B[c].apply(null,Array.prototype.slice.call(arguments,1))))},d3.event=null,d3.interpolate=function(a,b){var c=d3.interpolators.length,d;while(--c>=0&&!(d=d3.interpolators[c](a,b)));return d},d3.interpolateNumber=function(a,b){return b-=a,function(c){return a+b*c}},d3.interpolateRound=function(a,b){return b-=a,function(c){return Math.round(a+b*c)}},d3.interpolateString=function(a,b){var c,d,e,f=0,g=0,h=[],i=[],j,k;P.lastIndex=0;for(d=0;c=P.exec(b);++d)c.index&&h.push(b.substring(f,g=c.index)),i.push({i:h.length,x:c[0]}),h.push(null),f=P.lastIndex;f1){while(++e0&&(a=a.substring(0,e)),arguments.length<2?(e=this.node()[d])&&e._:this.each(function(e,f){function h(a){var c=d3.event;d3.event=a;try{b.call(g,g.__data__,f)}finally{d3.event=c}}var g=this;g[d]&&g.removeEventListener(a,g[d],c),b&&g.addEventListener(a,g[d]=h,c),h._=b})},bf.each=function(a){for(var b=-1,c=this.length;++b=ck?e?"M0,"+f+"A"+f+","+f+" 0 1,1 0,"+ -f+"A"+f+","+f+" 0 1,1 0,"+f+"M0,"+e+"A"+e+","+e+" 0 1,0 0,"+ -e+"A"+e+","+e+" 0 1,0 0,"+e+"Z":"M0,"+f+"A"+f+","+f+" 0 1,1 0,"+ -f+"A"+f+","+f+" 0 1,1 0,"+f+"Z":e?"M"+f*k+","+f*l+"A"+f+","+f+" 0 "+j+",1 "+f*m+","+f*n+"L"+e*m+","+e*n+"A"+e+","+e+" 0 "+j+",0 "+e*k+","+e*l+"Z":"M"+f*k+","+f*l+"A"+f+","+f+" 0 "+j+",1 "+f*m+","+f*n+"L0,0"+"Z"}var a=cl,b=cm,c=cn,d=co;return e.innerRadius=function(b){return arguments.length?(a=d3.functor(b),e):a},e.outerRadius=function(a){return arguments.length?(b=d3.functor(a),e):b},e.startAngle=function(a){return arguments.length?(c=d3.functor(a),e):c},e.endAngle=function(a){return arguments.length?(d=d3.functor(a),e):d},e.centroid=function(){var e=(a.apply(this,arguments)+b.apply(this,arguments))/2,f=(c.apply(this,arguments)+d.apply(this,arguments))/2+cj;return[Math.cos(f)*e,Math.sin(f)*e]},e};var cj=-Math.PI/2,ck=2*Math.PI-1e-6;d3.svg.line=function(){return cp(Object)};var ct={linear:cu,"step-before":cv,"step-after":cw,basis:cC,"basis-open":cD,"basis-closed":cE,bundle:cF,cardinal:cz,"cardinal-open":cx,"cardinal-closed":cy,monotone:cO},cH=[0,2/3,1/3,0],cI=[0,1/3,2/3,0],cJ=[0,1/6,2/3,1/6];d3.svg.line.radial=function(){var a=cp(cP);return a.radius=a.x,delete a.x,a.angle=a.y,delete a.y,a},cv.reverse=cw,cw.reverse=cv,d3.svg.area=function(){return cQ(Object)},d3.svg.area.radial=function(){var a=cQ(cP);return a.radius=a.x,delete a.x,a.innerRadius=a.x0,delete a.x0,a.outerRadius=a.x1,delete a.x1,a.angle=a.y,delete a.y,a.startAngle=a.y0,delete a.y0,a.endAngle=a.y1,delete a.y1,a},d3.svg.chord=function(){function f(c,d){var e=g(this,a,c,d),f=g(this,b,c,d);return"M"+e.p0+i(e.r,e.p1)+(h(e,f)?j(e.r,e.p1,e.r,e.p0):j(e.r,e.p1,f.r,f.p0)+i(f.r,f.p1)+j(f.r,f.p1,e.r,e.p0))+"Z"}function g(a,b,f,g){var h=b.call(a,f,g),i=c.call(a,h,g),j=d.call(a,h,g)+cj,k=e.call(a,h,g)+cj;return{r:i,a0:j,a1:k,p0:[i*Math.cos(j),i*Math.sin(j)],p1:[i*Math.cos(k),i*Math.sin(k)]}}function h(a,b){return a.a0==b.a0&&a.a1==b.a1}function i(a,b){return"A"+a+","+a+" 0 0,1 "+b}function j(a,b,c,d){return"Q 0,0 "+d}var a=cT,b=cU,c=cV,d=cn,e=co;return f.radius=function(a){return arguments.length?(c=d3.functor(a),f):c},f.source=function(b){return arguments.length?(a=d3.functor(b),f):a},f.target=function(a){return arguments.length?(b=d3.functor(a),f):b},f.startAngle=function(a){return arguments.length?(d=d3.functor(a),f):d},f.endAngle=function(a){return arguments.length?(e=d3.functor(a),f):e},f},d3.svg.diagonal=function(){function d(d,e){var f=a.call(this,d,e),g=b.call(this,d,e),h=(f.y+g.y)/2,i=[f,{x:f.x,y:h},{x:g.x,y:h},g];return i=i.map(c),"M"+i[0]+"C"+i[1]+" "+i[2]+" "+i[3]}var a=cT,b=cU,c=cY;return d.source=function(b){return arguments.length?(a=d3.functor(b),d):a},d.target=function(a){return arguments.length?(b=d3.functor(a),d):b},d.projection=function(a){return arguments.length?(c=a,d):c},d},d3.svg.diagonal.radial=function(){var a=d3.svg.diagonal(),b=cY,c=a.projection;return a.projection=function(a){return arguments.length?c(cZ(b=a)):b},a},d3.svg.mouse=function(a){return c_(a,d3.event)};var c$=/WebKit/.test(navigator.userAgent)?-1:0;d3.svg.touches=function(a,b){return arguments.length<2&&(b=d3.event.touches),b?d(b).map(function(b){var c=c_(a,b);return c.identifier=b.identifier,c}):[]},d3.svg.symbol=function(){function c(c,d){return(dc[a.call(this,c,d)]||dc.circle)(b.call(this,c,d))}var a=db,b=da;return c.type=function(b){return arguments.length?(a=d3.functor(b),c):a},c.size=function(a){return arguments.length?(b=d3.functor(a),c):b},c};var dc={circle:function(a){var b=Math.sqrt(a/Math.PI);return"M0,"+b+"A"+b+","+b+" 0 1,1 0,"+ -b+"A"+b+","+b+" 0 1,1 0,"+b+"Z"},cross:function(a){var b=Math.sqrt(a/5)/2;return"M"+ -3*b+","+ -b+"H"+ -b+"V"+ -3*b+"H"+b+"V"+ -b+"H"+3*b+"V"+b+"H"+b+"V"+3*b+"H"+ -b+"V"+b+"H"+ -3*b+"Z"},diamond:function(a){var b=Math.sqrt(a/(2*de)),c=b*de;return"M0,"+ -b+"L"+c+",0"+" 0,"+b+" "+ -c+",0"+"Z"},square:function(a){var b=Math.sqrt(a)/2;return"M"+ -b+","+ -b+"L"+b+","+ -b+" "+b+","+b+" "+ -b+","+b+"Z"},"triangle-down":function(a){var b=Math.sqrt(a/dd),c=b*dd/2;return"M0,"+c+"L"+b+","+ -c+" "+ -b+","+ -c+"Z"},"triangle-up":function(a){var b=Math.sqrt(a/dd),c=b*dd/2;return"M0,"+ -c+"L"+b+","+c+" "+ -b+","+c+"Z"}};d3.svg.symbolTypes=d3.keys(dc);var dd=Math.sqrt(3),de=Math.tan(30*Math.PI/180);d3.svg.axis=function(){function j(j){j.each(function(k,l,m){var n=d3.select(this),o=j.delay?function(a){var b=bv;try{return bv=j.id,a.transition().delay(j[m][l].delay).duration(j[m][l].duration).ease(j.ease())}finally{bv=b}}:Object,p=a.ticks?a.ticks.apply(a,g):a.domain(),q=h==null?a.tickFormat?a.tickFormat.apply(a,g):String:h,r=dh(a,p,i),s=n.selectAll(".minor").data(r,String),t=s.enter().insert("line","g").attr("class","tick minor").style("opacity",1e-6),u=o(s.exit()).style("opacity",1e-6).remove(),v=o(s).style("opacity",1),w=n.selectAll("g").data(p,String),x=w.enter().insert("g","path").style("opacity",1e-6),y=o(w.exit()).style("opacity",1e-6).remove(),z=o(w).style("opacity",1),A,B=bN(a),C=n.selectAll(".domain").data([0]),D=C.enter().append("path").attr("class","domain"),E=o(C),F=a.copy(),G=this.__chart__||F;this.__chart__=F,x.append("line").attr("class","tick"),x.append("text"),z.select("text").text(q);switch(b){case"bottom":A=df,v.attr("x2",0).attr("y2",d),z.select("line").attr("x2",0).attr("y2",c),z.select("text").attr("x",0).attr("y",Math.max(c,0)+f).attr("dy",".71em").attr("text-anchor","middle"),E.attr("d","M"+B[0]+","+e+"V0H"+B[1]+"V"+e);break;case"top":A=df,v.attr("x2",0).attr("y2",-d),z.select("line").attr("x2",0).attr("y2",-c),z.select("text").attr("x",0).attr("y",-(Math.max(c,0)+f)).attr("dy","0em").attr("text-anchor","middle"),E.attr("d","M"+B[0]+","+ -e+"V0H"+B[1]+"V"+ -e);break;case"left":A=dg,v.attr("x2",-d).attr("y2",0),z.select("line").attr("x2",-c).attr("y2",0),z.select("text").attr("x",-(Math.max(c,0)+f)).attr("y",0).attr("dy",".32em").attr("text-anchor","end"),E.attr("d","M"+ -e+","+B[0]+"H0V"+B[1]+"H"+ -e);break;case"right":A=dg,v.attr("x2",d).attr("y2",0),z.select("line").attr("x2",c).attr("y2",0),z.select("text").attr("x",Math.max(c,0)+f).attr("y",0).attr("dy",".32em").attr("text-anchor","start"),E.attr("d","M"+e+","+B[0]+"H0V"+B[1]+"H"+e)}if(a.ticks)x.call(A,G),z.call(A,F),y.call(A,F),t.call(A,G),v.call(A,F),u.call(A,F);else{var H=F.rangeBand()/2,I=function(a){return F(a)+H};x.call(A,I),z.call(A,I)}})}var a=d3.scale.linear(),b="bottom",c=6,d=6,e=6,f=3,g=[10],h,i=0;return j.scale=function(b){return arguments.length?(a=b,j):a},j.orient=function(a){return arguments.length?(b=a,j):b},j.ticks=function(){return arguments.length?(g=arguments,j):g},j.tickFormat=function(a){return arguments.length?(h=a,j):h},j.tickSize=function(a,b,f){if(!arguments.length)return c;var g=arguments.length-1;return c=+a,d=g>1?+b:c,e=g>0?+arguments[g]:c,j},j.tickPadding=function(a){return arguments.length?(f=+a,j):f},j.tickSubdivide=function(a){return arguments.length?(i=+a,j):i},j},d3.svg.brush=function(){function e(a){var g=b&&c?["n","e","s","w","nw","ne","se","sw"]:b?["e","w"]:c?["n","s"]:[];a.each(function(){var a=d3.select(this).on("mousedown.brush",f),h=a.selectAll(".background").data([,]),i=a.selectAll(".extent").data([,]),j=a.selectAll(".resize").data(g,String),k;h.enter().append("rect").attr("class","background").style("visibility","hidden").style("pointer-events","all").style("cursor","crosshair"),i.enter().append("rect").attr("class","extent").style("cursor","move"),j.enter().append("rect").attr("class",function(a){return"resize "+a}).attr("width",6).attr("height",6).style("visibility","hidden").style("pointer-events",e.empty()?"none":"all").style("cursor",function(a){return dA[a]}),j.exit().remove(),b&&(k=bN(b),h.attr("x",k[0]).attr("width",k[1]-k[0]),dt(a,d)),c&&(k=bN(c),h.attr("y",k[0]).attr("height",k[1]-k[0]),du(a,d))})}function f(){var a=d3.select(d3.event.target);di=e,dk=this,dn=d,ds=d3.svg.mouse(dk),(dp=a.classed("extent"))?(ds[0]=d[0][0]-ds[0],ds[1]=d[0][1]-ds[1]):a.classed("resize")?(dq=d3.event.target.__data__,ds[0]=d[+/w$/.test(dq)][0],ds[1]=d[+/^n/.test(dq)][1]):d3.event.altKey&&(dr=ds.slice()),dl=!/^(n|s)$/.test(dq)&&b,dm=!/^(e|w)$/.test(dq)&&c,dj=g(this,arguments),dj("brushstart"),dx(),O()}function g(b,c){return function(d){var f=d3.event;try{d3.event={type:d,target:e},a[d].apply(b,c)}finally{d3.event=f}}}var a=d3.dispatch("brushstart","brush","brushend"),b,c,d=[[0,0],[0,0]];return e.x=function(a){return arguments.length?(b=a,e):b},e.y=function(a){return arguments.length?(c=a,e):c},e.extent=function(a){var f,g,h,i,j;return arguments.length?(b&&(f=a[0],g=a[1],c&&(f=f[0],g=g[0]),b.invert&&(f=b(f),g=b(g)),gAlbers Projection path = d3.geo.path().projection(xy); d3.select("body") - .append("svg:svg") - .append("svg:g") + .append("svg") + .append("g") .attr("id", "states"); d3.json("../data/us-states.json", function(collection) { d3.select("#states") .selectAll("path") .data(collection.features) - .enter().append("svg:path") + .enter().append("path") .attr("d", path); d3.select("#states") - .append("svg:circle") + .append("circle") .attr("r", 10) .attr("transform", "translate(" + xy(xy.origin()).join(",") + ")") }); diff --git a/examples/area/area-radial.html b/examples/area/area-radial.html index 01b365dab280d..90df9a289141a 100644 --- a/examples/area/area-radial.html +++ b/examples/area/area-radial.html @@ -23,21 +23,21 @@ var r = 960 / 2, data = d3.range(361).map(function(i) { return .8 + Math.sin(i / 20 * Math.PI) / 6; }); -var svg = d3.select("body").append("svg:svg") +var svg = d3.select("body").append("svg") .data([data]) .attr("width", r * 2) .attr("height", r * 2) - .append("svg:g") + .append("g") .attr("transform", "translate(" + r + "," + r + ")"); -svg.append("svg:path") +svg.append("path") .attr("class", "area") .attr("d", d3.svg.area.radial() .innerRadius(r / 2) .outerRadius(function(d) { return r * d; }) .angle(function(d, i) { return i / 180 * Math.PI; })); -svg.append("svg:path") +svg.append("path") .attr("class", "line") .attr("d", d3.svg.line.radial() .radius(function(d) { return r * d; }) diff --git a/examples/area/area.html b/examples/area/area.html index 4ad8007db8478..944584e03e629 100644 --- a/examples/area/area.html +++ b/examples/area/area.html @@ -48,53 +48,53 @@ y = d3.scale.linear().domain([0, 1]).range([h, 0]); var vis = d3.select("body") - .append("svg:svg") + .append("svg") .data([data]) .attr("width", w + p * 2) .attr("height", h + p * 2) - .append("svg:g") + .append("g") .attr("transform", "translate(" + p + "," + p + ")"); var rules = vis.selectAll("g.rule") .data(x.ticks(10)) - .enter().append("svg:g") + .enter().append("g") .attr("class", "rule"); -rules.append("svg:line") +rules.append("line") .attr("x1", x) .attr("x2", x) .attr("y1", 0) .attr("y2", h - 1); -rules.append("svg:line") +rules.append("line") .attr("class", function(d) { return d ? null : "axis"; }) .attr("y1", y) .attr("y2", y) .attr("x1", 0) .attr("x2", w + 1); -rules.append("svg:text") +rules.append("text") .attr("x", x) .attr("y", h + 3) .attr("dy", ".71em") .attr("text-anchor", "middle") .text(x.tickFormat(10)); -rules.append("svg:text") +rules.append("text") .attr("y", y) .attr("x", -3) .attr("dy", ".35em") .attr("text-anchor", "end") .text(y.tickFormat(10)); -vis.append("svg:path") +vis.append("path") .attr("class", "area") .attr("d", d3.svg.area() .x(function(d) { return x(d.x); }) .y0(h - 1) .y1(function(d) { return y(d.y); })); -vis.append("svg:path") +vis.append("path") .attr("class", "line") .attr("d", d3.svg.line() .x(function(d) { return x(d.x); }) @@ -102,7 +102,7 @@ vis.selectAll("circle.area") .data(data) - .enter().append("svg:circle") + .enter().append("circle") .attr("class", "area") .attr("cx", function(d) { return x(d.x); }) .attr("cy", function(d) { return y(d.y); }) diff --git a/examples/axis/axis-alternating.html b/examples/axis/axis-alternating.html index 4d5890717d5e1..73d09b1d32316 100644 --- a/examples/axis/axis-alternating.html +++ b/examples/axis/axis-alternating.html @@ -29,18 +29,18 @@ x = d3.scale.linear().domain([.05, .95]).range([0, w]), y = d3.scale.linear().range([0, h]); -var svg = d3.select("body").append("svg:svg") +var svg = d3.select("body").append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); -svg.append("svg:g") +svg.append("g") .attr("class", "x minor") .attr("transform", "translate(0," + h + ")") .call(d3.svg.axis().scale(x).tickSubdivide(2).tickSize(-6)); -svg.append("svg:g") +svg.append("g") .attr("class", "x axis") .attr("transform", "translate(0," + h + ")") .call(d3.svg.axis().scale(x)); diff --git a/examples/axis/axis-ggplot2.html b/examples/axis/axis-ggplot2.html index fa3af6f8fe046..9a1f6a17369c4 100644 --- a/examples/axis/axis-ggplot2.html +++ b/examples/axis/axis-ggplot2.html @@ -43,22 +43,22 @@ x = d3.scale.linear().domain([.05, .95]).range([0, w]), y = d3.scale.linear().range([0, h]); -var svg = d3.select("body").append("svg:svg") +var svg = d3.select("body").append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); -svg.append("svg:rect") +svg.append("rect") .attr("width", w) .attr("height", h); -svg.append("svg:g") +svg.append("g") .attr("class", "x grid") .attr("transform", "translate(0," + h + ")") .call(d3.svg.axis().scale(x).tickSubdivide(1).tickSize(-h)); -svg.append("svg:g") +svg.append("g") .attr("class", "x axis") .attr("transform", "translate(0," + h + ")") .call(d3.svg.axis().scale(x)); diff --git a/examples/axis/axis-multiples.html b/examples/axis/axis-multiples.html index 2a6606106f51d..2549b23398604 100644 --- a/examples/axis/axis-multiples.html +++ b/examples/axis/axis-multiples.html @@ -82,30 +82,30 @@ // Add an SVG element for each symbol, with the desired dimensions and margin. var svg = d3.select("body").selectAll("svg") .data(symbols) - .enter().append("svg:svg") + .enter().append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); // Add the area path elements. Note: the y-domain is set per element. - svg.append("svg:path") + svg.append("path") .attr("class", "area") .attr("d", function(d) { y.domain([0, d.maxPrice]); return area(d.values); }); // Add the x-axis. - svg.append("svg:g") + svg.append("g") .attr("class", "x axis") .attr("transform", "translate(0," + h + ")") .call(xAxis); // Add the line path elements. Note: the y-domain is set per element. - svg.append("svg:path") + svg.append("path") .attr("class", "line") .attr("d", function(d) { y.domain([0, d.maxPrice]); return line(d.values); }); // Add a small label for the symbol name. - svg.append("svg:text") + svg.append("text") .attr("x", w - 6) .attr("y", h - 6) .attr("text-anchor", "end") diff --git a/examples/axis/axis-orientations.html b/examples/axis/axis-orientations.html index 19ba05ab7e31b..f10eb8838df0f 100644 --- a/examples/axis/axis-orientations.html +++ b/examples/axis/axis-orientations.html @@ -34,26 +34,26 @@ var yAxis = d3.svg.axis() .scale(y); -var svg = d3.select("body").append("svg:svg") +var svg = d3.select("body").append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); -svg.append("svg:g") +svg.append("g") .attr("class", "bottom axis") .attr("transform", "translate(0," + h + ")") .call(xAxis.orient("bottom")); -svg.append("svg:g") +svg.append("g") .attr("class", "top axis") .call(xAxis.orient("top")); -svg.append("svg:g") +svg.append("g") .attr("class", "left axis") .call(yAxis.orient("left")); -svg.append("svg:g") +svg.append("g") .attr("class", "right axis") .attr("transform", "translate(" + w + ",0)") .call(yAxis.orient("right")); diff --git a/examples/axis/axis-transition.html b/examples/axis/axis-transition.html index 7346cd9275f63..e88ada31c965a 100644 --- a/examples/axis/axis-transition.html +++ b/examples/axis/axis-transition.html @@ -91,45 +91,45 @@ y.domain([0, d3.max(values, function(d) { return d.price; })]); // Add an SVG element with the desired dimensions and margin. - var svg = d3.select("body").append("svg:svg") + var svg = d3.select("body").append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); // Add the clip path. - svg.append("svg:clipPath") + svg.append("clipPath") .attr("id", "clip") - .append("svg:rect") + .append("rect") .attr("width", w) .attr("height", h); // Add the area path. - svg.append("svg:path") + svg.append("path") .attr("class", "area") .attr("clip-path", "url(#clip)") .attr("d", area(values)); // Add the x-axis. - svg.append("svg:g") + svg.append("g") .attr("class", "x axis") .attr("transform", "translate(0," + h + ")") .call(xAxis); // Add the y-axis. - svg.append("svg:g") + svg.append("g") .attr("class", "y axis") .attr("transform", "translate(" + w + ",0)") .call(yAxis); // Add the line path. - svg.append("svg:path") + svg.append("path") .attr("class", "line") .attr("clip-path", "url(#clip)") .attr("d", line(values)); // Add a small label for the symbol name. - svg.append("svg:text") + svg.append("text") .attr("x", w - 6) .attr("y", h - 6) .attr("text-anchor", "end") diff --git a/examples/azimuthal/azimuthal.js b/examples/azimuthal/azimuthal.js index 17cf746b73558..36969f9b872d1 100644 --- a/examples/azimuthal/azimuthal.js +++ b/examples/azimuthal/azimuthal.js @@ -1,14 +1,14 @@ var xy = d3.geo.azimuthal().scale(240).mode("stereographic"), circle = d3.geo.greatCircle(), path = d3.geo.path().projection(xy), - svg = d3.select("body").append("svg:svg"); + svg = d3.select("body").append("svg"); d3.json("../data/world-countries.json", function(collection) { svg.selectAll("path") .data(collection.features) - .enter().append("svg:path") + .enter().append("path") .attr("d", function(d) { return path(circle.clip(d)); }) - .append("svg:title") + .append("title") .text(function(d) { return d.properties.name; }); }); diff --git a/examples/bar/bar-hierarchy.html b/examples/bar/bar-hierarchy.html index 243e67d33e286..f31621fe4d5e9 100644 --- a/examples/bar/bar-hierarchy.html +++ b/examples/bar/bar-hierarchy.html @@ -44,24 +44,24 @@ .scale(x) .orient("top"); -var svg = d3.select("body").append("svg:svg") +var svg = d3.select("body").append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); -svg.append("svg:rect") +svg.append("rect") .attr("class", "background") .attr("width", w) .attr("height", h) .on("click", up); -svg.append("svg:g") +svg.append("g") .attr("class", "x axis"); -svg.append("svg:g") +svg.append("g") .attr("class", "y axis") - .append("svg:line") + .append("line") .attr("y1", "100%"); d3.json("../data/flare.json", function(root) { @@ -185,23 +185,23 @@ // Creates a set of bars for the given data node, at the specified index. function bar(d) { - var bar = svg.insert("svg:g", ".y.axis") + var bar = svg.insert("g", ".y.axis") .attr("class", "enter") .attr("transform", "translate(0,5)") .selectAll("g") .data(d.children) - .enter().append("svg:g") + .enter().append("g") .style("cursor", function(d) { return !d.children ? null : "pointer"; }) .on("click", down); - bar.append("svg:text") + bar.append("text") .attr("x", -6) .attr("y", y / 2) .attr("dy", ".35em") .attr("text-anchor", "end") .text(function(d) { return d.name; }); - bar.append("svg:rect") + bar.append("rect") .attr("width", function(d) { return x(d.value); }) .attr("height", y); diff --git a/examples/bonne/bonne.html b/examples/bonne/bonne.html index da80271e4a528..43ad7ff826009 100644 --- a/examples/bonne/bonne.html +++ b/examples/bonne/bonne.html @@ -46,15 +46,15 @@

Bonne Projection

var xy = d3.geo.bonne(), path = d3.geo.path().projection(xy); -var countries = d3.select("body").append("svg:svg") +var countries = d3.select("body").append("svg") .attr("id", "countries"); d3.json("../data/world-countries.json", function(collection) { countries.selectAll("path") .data(collection.features) - .enter().append("svg:path") + .enter().append("path") .attr("d", path) - .append("svg:title") + .append("title") .text(function(d) { return d.properties.name; }); }); diff --git a/examples/box/box.js b/examples/box/box.js index 729ce25f5daca..8a673eed4648c 100644 --- a/examples/box/box.js +++ b/examples/box/box.js @@ -27,11 +27,11 @@ d3.csv("../data/morley.csv", function(csv) { var vis = d3.select("#chart").selectAll("svg") .data(data) - .enter().append("svg:svg") + .enter().append("svg") .attr("class", "box") .attr("width", w) .attr("height", h) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")") .call(chart); diff --git a/examples/brush/brush-ordinal.html b/examples/brush/brush-ordinal.html index 9b802e998789b..d5d73aeef37ee 100644 --- a/examples/brush/brush-ordinal.html +++ b/examples/brush/brush-ordinal.html @@ -48,24 +48,24 @@ var x = d3.scale.ordinal().domain(data).rangePoints([0, w], 1); -var svg = d3.select("body").append("svg:svg") +var svg = d3.select("body").append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); -svg.append("svg:g") +svg.append("g") .attr("class", "x axis") .attr("transform", "translate(0," + h + ")") .call(d3.svg.axis().scale(x).orient("bottom")); -var symbol = svg.append("svg:g").selectAll("path") +var symbol = svg.append("g").selectAll("path") .data(data) - .enter().append("svg:path") + .enter().append("path") .attr("transform", function(d) { return "translate(" + x(d) + "," + (h / 2) + ")"; }) .attr("d", d3.svg.symbol().type(String).size(200)); -svg.append("svg:g") +svg.append("g") .attr("class", "brush") .call(d3.svg.brush().x(x) .on("brushstart", brushstart) diff --git a/examples/brush/brush-x.html b/examples/brush/brush-x.html index 6cfa3ac136d0e..a771330640f26 100644 --- a/examples/brush/brush-x.html +++ b/examples/brush/brush-x.html @@ -48,24 +48,24 @@ var x = d3.scale.linear().range([0, w]), y = d3.random.normal(h / 2, h / 8); -var svg = d3.select("body").append("svg:svg") +var svg = d3.select("body").append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); -svg.append("svg:g") +svg.append("g") .attr("class", "x axis") .attr("transform", "translate(0," + h + ")") .call(d3.svg.axis().scale(x).orient("bottom")); var circle = svg.selectAll("circle") .data(data) - .enter().append("svg:circle") + .enter().append("circle") .attr("transform", function(d) { return "translate(" + x(d) + "," + y() + ")"; }) .attr("r", 3.5); -svg.append("svg:g") +svg.append("g") .attr("class", "brush") .call(d3.svg.brush().x(x) .on("brushstart", brushstart) diff --git a/examples/brush/brush-y.html b/examples/brush/brush-y.html index 6fce731a298f6..e780ad6bdb081 100644 --- a/examples/brush/brush-y.html +++ b/examples/brush/brush-y.html @@ -48,23 +48,23 @@ var x = d3.random.normal(w / 2, w / 8), y = d3.scale.linear().range([h, 0]); -var svg = d3.select("body").append("svg:svg") +var svg = d3.select("body").append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); -svg.append("svg:g") +svg.append("g") .attr("class", "y axis") .call(d3.svg.axis().scale(y).orient("left")); var circle = svg.selectAll("circle") .data(data) - .enter().append("svg:circle") + .enter().append("circle") .attr("transform", function(d) { return "translate(" + x() + "," + y(d) + ")"; }) .attr("r", 3.5); -svg.append("svg:g") +svg.append("g") .attr("class", "brush") .call(d3.svg.brush().y(y) .on("brushstart", brushstart) diff --git a/examples/brush/brush.html b/examples/brush/brush.html index b2943aa284557..e8be3d007accb 100644 --- a/examples/brush/brush.html +++ b/examples/brush/brush.html @@ -49,28 +49,28 @@ var x = d3.scale.linear().range([0, w]), y = d3.scale.linear().range([h, 0]); -var svg = d3.select("body").append("svg:svg") +var svg = d3.select("body").append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); -svg.append("svg:g") +svg.append("g") .attr("class", "x axis") .attr("transform", "translate(0," + h + ")") .call(d3.svg.axis().scale(x).orient("bottom")); -svg.append("svg:g") +svg.append("g") .attr("class", "y axis") .call(d3.svg.axis().scale(y).orient("left")); var circle = svg.selectAll("circle") .data(data) - .enter().append("svg:circle") + .enter().append("circle") .attr("transform", function(d) { return "translate(" + x(d[0]) + "," + y(d[1]) + ")"; }) .attr("r", 3.5); -svg.append("svg:g") +svg.append("g") .attr("class", "brush") .call(d3.svg.brush().x(x).y(y) .on("brushstart", brushstart) diff --git a/examples/bubble/bubble.js b/examples/bubble/bubble.js index 36afce92f681b..5dbff4c120e4e 100644 --- a/examples/bubble/bubble.js +++ b/examples/bubble/bubble.js @@ -6,7 +6,7 @@ var bubble = d3.layout.pack() .sort(null) .size([r, r]); -var vis = d3.select("#chart").append("svg:svg") +var vis = d3.select("#chart").append("svg") .attr("width", r) .attr("height", r) .attr("class", "bubble"); @@ -15,18 +15,18 @@ d3.json("../data/flare.json", function(json) { var node = vis.selectAll("g.node") .data(bubble.nodes(classes(json)) .filter(function(d) { return !d.children; })) - .enter().append("svg:g") + .enter().append("g") .attr("class", "node") .attr("transform", function(d) { return "translate(" + d.x + "," + d.y + ")"; }); - node.append("svg:title") + node.append("title") .text(function(d) { return d.className + ": " + format(d.value); }); - node.append("svg:circle") + node.append("circle") .attr("r", function(d) { return d.r; }) .style("fill", function(d) { return fill(d.packageName); }); - node.append("svg:text") + node.append("text") .attr("text-anchor", "middle") .attr("dy", ".3em") .text(function(d) { return d.className.substring(0, d.r / 3); }); diff --git a/examples/bullet/bullet.js b/examples/bullet/bullet.js index 4e35ec6fc0d02..213e981ac167f 100644 --- a/examples/bullet/bullet.js +++ b/examples/bullet/bullet.js @@ -10,23 +10,23 @@ d3.json("bullets.json", function(data) { var vis = d3.select("#chart").selectAll("svg") .data(data) - .enter().append("svg:svg") + .enter().append("svg") .attr("class", "bullet") .attr("width", w) .attr("height", h) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")") .call(chart); - var title = vis.append("svg:g") + var title = vis.append("g") .attr("text-anchor", "end") .attr("transform", "translate(-6," + (h - m[0] - m[2]) / 2 + ")"); - title.append("svg:text") + title.append("text") .attr("class", "title") .text(function(d) { return d.title; }); - title.append("svg:text") + title.append("text") .attr("class", "subtitle") .attr("dy", "1em") .text(function(d) { return d.subtitle; }); diff --git a/examples/bundle/bundle-radial.js b/examples/bundle/bundle-radial.js index 99597ce83a37a..9021f12487bfe 100644 --- a/examples/bundle/bundle-radial.js +++ b/examples/bundle/bundle-radial.js @@ -14,10 +14,10 @@ var line = d3.svg.line.radial() .radius(function(d) { return d.y; }) .angle(function(d) { return d.x / 180 * Math.PI; }); -var vis = d3.select("#chart").append("svg:svg") +var vis = d3.select("#chart").append("svg") .attr("width", r * 2) .attr("height", r * 2) - .append("svg:g") + .append("g") .attr("transform", "translate(" + r + "," + r + ")"); d3.json("../data/flare-imports.json", function(classes) { @@ -26,16 +26,16 @@ d3.json("../data/flare-imports.json", function(classes) { vis.selectAll("path.link") .data(splines = bundle(links)) - .enter().append("svg:path") + .enter().append("path") .attr("class", "link") .attr("d", line); vis.selectAll("g.node") .data(nodes.filter(function(n) { return !n.children; })) - .enter().append("svg:g") + .enter().append("g") .attr("class", "node") .attr("transform", function(d) { return "rotate(" + (d.x - 90) + ")translate(" + d.y + ")"; }) - .append("svg:text") + .append("text") .attr("dx", function(d) { return d.x < 180 ? 8 : -8; }) .attr("dy", ".31em") .attr("text-anchor", function(d) { return d.x < 180 ? "start" : "end"; }) diff --git a/examples/bundle/bundle-treemap.js b/examples/bundle/bundle-treemap.js index a8efb20876362..969f293031e0f 100644 --- a/examples/bundle/bundle-treemap.js +++ b/examples/bundle/bundle-treemap.js @@ -32,13 +32,13 @@ d3.json("../data/flare-imports.json", function(classes) { .call(cell) .text(function(d) { return d.children ? null : d.key; }); - div.append("svg:svg") + div.append("svg") .attr("width", w) .attr("height", h) .style("position", "absolute") .selectAll("path.link") .data(bundle(links)) - .enter().append("svg:path") + .enter().append("path") .style("stroke", function(d) { return stroke(d[0].value); }) .attr("class", "link") .attr("d", line); diff --git a/examples/calendar/dji-area.html b/examples/calendar/dji-area.html index 864da96e3cc75..22c00f112eddc 100644 --- a/examples/calendar/dji-area.html +++ b/examples/calendar/dji-area.html @@ -68,13 +68,13 @@ .y0(y(0)) .y1(function(d) { return y(d.Close); }); -var svg = d3.select("body").append("svg:svg") +var svg = d3.select("body").append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) - .append("svg:g") + .append("g") .attr("transform", "translate(" + m[3] + "," + m[0] + ")"); -svg.append("svg:rect") +svg.append("rect") .attr("width", w) .attr("height", h); @@ -90,27 +90,27 @@ x.domain([data[0].Date, data[data.length - 1].Date]); y.domain([0, d3.max(data, function(d) { return d.Close; })]); - svg.append("svg:g") + svg.append("g") .attr("class", "x grid") .attr("transform", "translate(0," + h + ")") .call(xAxis.tickSubdivide(1).tickSize(-h)); - svg.append("svg:g") + svg.append("g") .attr("class", "y grid") .attr("transform", "translate(" + w + ",0)") .call(yAxis.tickSubdivide(1).tickSize(-w)); - svg.append("svg:g") + svg.append("g") .attr("class", "x axis") .attr("transform", "translate(0," + h + ")") .call(xAxis.tickSubdivide(0).tickSize(6)); - svg.append("svg:g") + svg.append("g") .attr("class", "y axis") .attr("transform", "translate(" + w + ",0)") .call(yAxis.tickSubdivide(0).tickSize(6)); - svg.append("svg:path") + svg.append("path") .attr("class", "area") .attr("d", area(data)); }); diff --git a/examples/calendar/dji.js b/examples/calendar/dji.js index cbfbc2429a397..2ef00016eac6f 100644 --- a/examples/calendar/dji.js +++ b/examples/calendar/dji.js @@ -14,21 +14,21 @@ var color = d3.scale.quantize() var svg = d3.select("#chart").selectAll("svg") .data(d3.range(1990, 2011)) - .enter().append("svg:svg") + .enter().append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) .attr("class", "RdYlGn") - .append("svg:g") + .append("g") .attr("transform", "translate(" + (m[3] + (w - z * 53) / 2) + "," + (m[0] + (h - z * 7) / 2) + ")"); -svg.append("svg:text") +svg.append("text") .attr("transform", "translate(-6," + z * 3.5 + ")rotate(-90)") .attr("text-anchor", "middle") .text(String); var rect = svg.selectAll("rect.day") .data(function(d) { return d3.time.days(new Date(d, 0, 1), new Date(d + 1, 0, 1)); }) - .enter().append("svg:rect") + .enter().append("rect") .attr("class", "day") .attr("width", z) .attr("height", z) @@ -37,7 +37,7 @@ var rect = svg.selectAll("rect.day") svg.selectAll("path.month") .data(function(d) { return d3.time.months(new Date(d, 0, 1), new Date(d + 1, 0, 1)); }) - .enter().append("svg:path") + .enter().append("path") .attr("class", "month") .attr("d", monthPath); @@ -49,7 +49,7 @@ d3.csv("dji.csv", function(csv) { rect .attr("class", function(d) { return "day q" + color(data[format(d)]) + "-9"; }) - .append("svg:title") + .append("title") .text(function(d) { return (d = format(d)) + (d in data ? ": " + percent(data[d]) : ""); }); }); diff --git a/examples/calendar/vix.js b/examples/calendar/vix.js index ed623dee2d106..1bc99c28bf025 100644 --- a/examples/calendar/vix.js +++ b/examples/calendar/vix.js @@ -12,21 +12,21 @@ var color = d3.scale.quantile() var svg = d3.select("#chart").selectAll("svg") .data(d3.range(1993, 2011)) - .enter().append("svg:svg") + .enter().append("svg") .attr("width", w + m[1] + m[3]) .attr("height", h + m[0] + m[2]) .attr("class", "RdYlGn") - .append("svg:g") + .append("g") .attr("transform", "translate(" + (m[3] + (w - z * 53) / 2) + "," + (m[0] + (h - z * 7) / 2) + ")"); -svg.append("svg:text") +svg.append("text") .attr("transform", "translate(-6," + z * 3.5 + ")rotate(-90)") .attr("text-anchor", "middle") .text(String); var rect = svg.selectAll("rect.day") .data(function(d) { return d3.time.days(new Date(d, 0, 1), new Date(d + 1, 0, 1)); }) - .enter().append("svg:rect") + .enter().append("rect") .attr("class", "day") .attr("width", z) .attr("height", z) @@ -35,7 +35,7 @@ var rect = svg.selectAll("rect.day") svg.selectAll("path.month") .data(function(d) { return d3.time.months(new Date(d, 0, 1), new Date(d + 1, 0, 1)); }) - .enter().append("svg:path") + .enter().append("path") .attr("class", "month") .attr("d", monthPath); @@ -49,7 +49,7 @@ d3.csv("vix.csv", function(csv) { rect .attr("class", function(d) { return "day q" + color(data[format(d)]) + "-9"; }) - .append("svg:title") + .append("title") .text(function(d) { return (d = format(d)) + (d in data ? ": " + data[d] : ""); }); }); diff --git a/examples/cartogram/cartogram.js b/examples/cartogram/cartogram.js index 04d80a779822b..e0c9f38858185 100644 --- a/examples/cartogram/cartogram.js +++ b/examples/cartogram/cartogram.js @@ -6,7 +6,7 @@ var data = [ .169, , .132, .167, .139, .184, .159, .14, .146, .157, , .139, .183, .16, .143 ]; -var svg = d3.select("#chart").append("svg:svg") +var svg = d3.select("#chart").append("svg") .attr("width", 960) .attr("height", 500); @@ -14,27 +14,27 @@ d3.json("../data/us-states.json", function(json) { var path = d3.geo.path(); // A thick black stroke for the exterior. - svg.append("svg:g") + svg.append("g") .attr("class", "black") .selectAll("path") .data(json.features) - .enter().append("svg:path") + .enter().append("path") .attr("d", path); // A white overlay to hide interior black strokes. - svg.append("svg:g") + svg.append("g") .attr("class", "white") .selectAll("path") .data(json.features) - .enter().append("svg:path") + .enter().append("path") .attr("d", path); // The polygons, scaled! - svg.append("svg:g") + svg.append("g") .attr("class", "grey") .selectAll("path") .data(json.features) - .enter().append("svg:path") + .enter().append("path") .attr("d", path) .attr("transform", function(d) { var centroid = path.centroid(d), diff --git a/examples/cartogram/demers.js b/examples/cartogram/demers.js index afb3cdfe12b18..4b1c365411d61 100644 --- a/examples/cartogram/demers.js +++ b/examples/cartogram/demers.js @@ -15,7 +15,7 @@ var force = d3.layout.force() .gravity(0) .size([960, 500]); -var svg = d3.select("#chart").append("svg:svg"); +var svg = d3.select("#chart").append("svg"); d3.json("../data/us-state-centroids.json", function(states) { var project = d3.geo.albersUsa(), @@ -70,7 +70,7 @@ d3.json("../data/us-state-centroids.json", function(states) { svg.selectAll("rect") .data(nodes) - .enter().append("svg:rect") + .enter().append("rect") .style("fill", function(d) { return color(d.value); }) .attr("x", function(d) { return d.x - d.r; }) .attr("y", function(d) { return d.y - d.r; }) diff --git a/examples/cartogram/dorling.js b/examples/cartogram/dorling.js index aa7c269a99d01..241d95b01f0f8 100644 --- a/examples/cartogram/dorling.js +++ b/examples/cartogram/dorling.js @@ -15,10 +15,10 @@ var force = d3.layout.force() .gravity(0) .size([960, 500]); -var svg = d3.select("#chart").append("svg:svg") +var svg = d3.select("#chart").append("svg") .attr("width", 960 + 100) .attr("height", 500 + 100) - .append("svg:g") + .append("g") .attr("transform", "translate(50,50)"); d3.json("../data/us-state-centroids.json", function(states) { @@ -72,7 +72,7 @@ d3.json("../data/us-state-centroids.json", function(states) { svg.selectAll("circle") .data(nodes) - .enter().append("svg:circle") + .enter().append("circle") .style("fill", function(d) { return color(d.value); }) .attr("cx", function(d) { return d.x; }) .attr("cy", function(d) { return d.y; }) diff --git a/examples/chord/chord-flare.html b/examples/chord/chord-flare.html index 9c4dd0982554f..7a66b7045012a 100644 --- a/examples/chord/chord-flare.html +++ b/examples/chord/chord-flare.html @@ -34,10 +34,10 @@ .innerRadius(r0) .outerRadius(r0 + 20); -var svg = d3.select("body").append("svg:svg") +var svg = d3.select("body").append("svg") .attr("width", r1 * 2) .attr("height", r1 * 2) - .append("svg:g") + .append("g") .attr("transform", "translate(" + r1 + "," + r1 + ")"); d3.json("../data/flare-imports.json", function(imports) { @@ -75,15 +75,15 @@ var g = svg.selectAll("g.group") .data(chord.groups) - .enter().append("svg:g") + .enter().append("g") .attr("class", "group"); - g.append("svg:path") + g.append("path") .style("fill", function(d) { return fill(d.index); }) .style("stroke", function(d) { return fill(d.index); }) .attr("d", arc); - g.append("svg:text") + g.append("text") .each(function(d) { d.angle = (d.startAngle + d.endAngle) / 2; }) .attr("dy", ".35em") .attr("text-anchor", function(d) { return d.angle > Math.PI ? "end" : null; }) @@ -96,7 +96,7 @@ svg.selectAll("path.chord") .data(chord.chords) - .enter().append("svg:path") + .enter().append("path") .attr("class", "chord") .style("stroke", function(d) { return d3.rgb(fill(d.source.index)).darker(); }) .style("fill", function(d) { return fill(d.source.index); }) diff --git a/examples/chord/chord.js b/examples/chord/chord.js index d9440018e3dba..ec2ad34eda8aa 100644 --- a/examples/chord/chord.js +++ b/examples/chord/chord.js @@ -19,42 +19,42 @@ var fill = d3.scale.ordinal() .range(["#000000", "#FFDD89", "#957244", "#F26223"]); var svg = d3.select("#chart") - .append("svg:svg") + .append("svg") .attr("width", w) .attr("height", h) - .append("svg:g") + .append("g") .attr("transform", "translate(" + w / 2 + "," + h / 2 + ")"); -svg.append("svg:g") +svg.append("g") .selectAll("path") .data(chord.groups) - .enter().append("svg:path") + .enter().append("path") .style("fill", function(d) { return fill(d.index); }) .style("stroke", function(d) { return fill(d.index); }) .attr("d", d3.svg.arc().innerRadius(r0).outerRadius(r1)) .on("mouseover", fade(.1)) .on("mouseout", fade(1)); -var ticks = svg.append("svg:g") +var ticks = svg.append("g") .selectAll("g") .data(chord.groups) - .enter().append("svg:g") + .enter().append("g") .selectAll("g") .data(groupTicks) - .enter().append("svg:g") + .enter().append("g") .attr("transform", function(d) { return "rotate(" + (d.angle * 180 / Math.PI - 90) + ")" + "translate(" + r1 + ",0)"; }); -ticks.append("svg:line") +ticks.append("line") .attr("x1", 1) .attr("y1", 0) .attr("x2", 5) .attr("y2", 0) .style("stroke", "#000"); -ticks.append("svg:text") +ticks.append("text") .attr("x", 8) .attr("dy", ".35em") .attr("text-anchor", function(d) { @@ -65,11 +65,11 @@ ticks.append("svg:text") }) .text(function(d) { return d.label; }); -svg.append("svg:g") +svg.append("g") .attr("class", "chord") .selectAll("path") .data(chord.chords) - .enter().append("svg:path") + .enter().append("path") .style("fill", function(d) { return fill(d.target.index); }) .attr("d", d3.svg.chord().radius(r0)) .style("opacity", 1); diff --git a/examples/choropleth/choropleth-area.html b/examples/choropleth/choropleth-area.html index 60a0ab20cd759..1d8199cca49c3 100644 --- a/examples/choropleth/choropleth-area.html +++ b/examples/choropleth/choropleth-area.html @@ -20,12 +20,12 @@