From bcd4cf2ccce85ad6f720a91fb6d1137f18bdfb94 Mon Sep 17 00:00:00 2001 From: David Schnurr Date: Thu, 15 Sep 2016 14:00:19 +0200 Subject: [PATCH] Use clusters instead of breaks --- README.md | 4 ++-- dist/d3-scale-cluster.min.js | 2 +- spec/ScaleSpec.js | 6 +++--- src/index.js | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 6105643..ad7f7c8 100644 --- a/README.md +++ b/README.md @@ -3,14 +3,14 @@ D3 scale that clusters data into discrete groups ###Usage -This scale largely has the same API as [d3.scaleQuantile](https://github.com/d3/d3-scale/blob/master/README.md#scaleQuantile) (however we use `breaks()` instead of `quantiles()`) +This scale largely has the same API as [d3.scaleQuantile](https://github.com/d3/d3-scale/blob/master/README.md#scaleQuantile) (however we use `clusters()` instead of `quantiles()`) ```js var scale = d3.scaleCluster() .domain([1, 2, 4, 5, 12, 43, 52, 123, 234, 1244]) .range(['#E5D6EA', '#C798D3', '#9E58AF', '#7F3391', '#581F66', '#30003A']); -var breaks = scale.breaks(); // [12, 43, 123, 234, 1244] +var clusters = scale.clusters(); // [12, 43, 123, 234, 1244] var color = scale(52); // '#9E58AF' var extent = scale.invertExtent('#9E58AF'); // [43, 123] ``` diff --git a/dist/d3-scale-cluster.min.js b/dist/d3-scale-cluster.min.js index 2805519..cfbc3fd 100644 --- a/dist/d3-scale-cluster.min.js +++ b/dist/d3-scale-cluster.min.js @@ -1 +1 @@ -!function(r){function n(e){if(t[e])return t[e].exports;var o=t[e]={exports:{},id:e,loaded:!1};return r[e].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}var t={};return n.m=r,n.c=t,n.p="",n(0)}([function(r,n,t){function e(){function r(){if(!(a.length<=2)){n=o(t,a.length),u=[];for(var r=0;r=0;t--)if(r>=u[t])return a[t];return a[0]}};return f.domain=function(){return arguments.length?(t=arguments[0],r(),f):t},f.range=function(){if(arguments.length){var n=arguments[0],t=n.length!==a.length;return a=n,t&&r(),f}return a},f.invertExtent=function(r){for(var n=NaN,t=NaN,e=0;er.length)throw new Error("Cannot generate more classes than there are data values");var a=t(r),u=e(a);if(1===u)return[a];for(var f=o(n,a.length),i=o(n,a.length),l=0;l=l;d--)v+=(c-d)/(c-d+1)*Math.pow(a[d]-p,2),p=(a[d]+(c-d)*p)/(c-d+1),d===c?(f[l][c]=v,i[l][c]=d,d>0&&(f[l][c]+=f[l-1][d-1])):0===d?v<=f[l][c]&&(f[l][c]=v,i[l][c]=d):v+f[l-1][d-1]=0;l--){var m=i[l][N];x[l]=a.slice(m,N+1),l>0&&(N=m-1)}return x}r.exports=a}]); \ No newline at end of file +!function(r){function n(e){if(t[e])return t[e].exports;var o=t[e]={exports:{},id:e,loaded:!1};return r[e].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}var t={};return n.m=r,n.c=t,n.p="",n(0)}([function(r,n,t){function e(){function r(){if(!(a.length<=2)){n=o(t,a.length),u=[];for(var r=0;r=0;t--)if(r>=u[t])return a[t];return a[0]}};return f.domain=function(){return arguments.length?(t=arguments[0],r(),f):t},f.range=function(){if(arguments.length){var n=arguments[0],t=n.length!==a.length;return a=n,t&&r(),f}return a},f.invertExtent=function(r){for(var n=NaN,t=NaN,e=0;er.length)throw new Error("Cannot generate more classes than there are data values");var a=t(r),u=e(a);if(1===u)return[a];for(var f=o(n,a.length),i=o(n,a.length),l=0;l=l;d--)v+=(h-d)/(h-d+1)*Math.pow(a[d]-p,2),p=(a[d]+(h-d)*p)/(h-d+1),d===h?(f[l][h]=v,i[l][h]=d,d>0&&(f[l][h]+=f[l-1][d-1])):0===d?v<=f[l][h]&&(f[l][h]=v,i[l][h]=d):v+f[l-1][d-1]=0;l--){var m=i[l][N];x[l]=a.slice(m,N+1),l>0&&(N=m-1)}return x}r.exports=a}]); \ No newline at end of file diff --git a/spec/ScaleSpec.js b/spec/ScaleSpec.js index 7ea0048..67727a2 100644 --- a/spec/ScaleSpec.js +++ b/spec/ScaleSpec.js @@ -9,13 +9,13 @@ describe('Scale', function () { scale = d3scaleCluster(); }); - it('should find natural breaks', function () { + it('should find clusters', function () { scale .domain(DEFAULT_DOMAIN) .range(DEFAULT_RANGE); - var breaks = scale.breaks(); - expect(breaks).toEqual([12, 43, 123, 234, 1244]); + var clusters = scale.clusters(); + expect(clusters).toEqual([12, 43, 123, 234, 1244]); expect(scale(52)).toEqual('c'); }); diff --git a/src/index.js b/src/index.js index 1e20640..9b7cbda 100644 --- a/src/index.js +++ b/src/index.js @@ -67,7 +67,7 @@ function d3scaleCluster () { return [extentA, extentB]; }; - scale.breaks = function () { + scale.clusters = function () { return breakpoints.slice(1); };