StackGenVis: Alignment of Data, Algorithms, and Models for Stacking Ensemble Learning Using Performance Metrics
https://doi.org/10.1109/TVCG.2020.3030352
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2 lines
6.8 KiB
2 lines
6.8 KiB
// https://github.com/topojson/topojson-client Version 2.1.0. Copyright 2016 Mike Bostock.
|
|
!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(n.topojson=n.topojson||{})}(this,function(n){"use strict";function t(n,t){var e=t.id,o=t.bbox,a=null==t.properties?{}:t.properties,c=r(n,t);return null==e&&null==o?{type:"Feature",properties:a,geometry:c}:null==o?{type:"Feature",id:e,properties:a,geometry:c}:{type:"Feature",id:e,bbox:o,properties:a,geometry:c}}function r(n,t){function r(n,t){t.length&&t.pop();for(var r=l[n<0?~n:n],e=0,o=r.length;e<o;++e)t.push(f(r[e].slice(),e));n<0&&s(t,o)}function e(n){return f(n.slice())}function o(n){for(var t=[],e=0,o=n.length;e<o;++e)r(n[e],t);return t.length<2&&t.push(t[0].slice()),t}function a(n){for(var t=o(n);t.length<4;)t.push(t[0].slice());return t}function c(n){return n.map(a)}function i(n){var t,r=n.type;switch(r){case"GeometryCollection":return{type:r,geometries:n.geometries.map(i)};case"Point":t=e(n.coordinates);break;case"MultiPoint":t=n.coordinates.map(e);break;case"LineString":t=o(n.arcs);break;case"MultiLineString":t=n.arcs.map(o);break;case"Polygon":t=c(n.arcs);break;case"MultiPolygon":t=n.arcs.map(c);break;default:return null}return{type:r,coordinates:t}}var f=u(n),l=n.arcs;return i(t)}function e(n,t,r){var e,a,c;if(arguments.length>1)e=o(n,t,r);else for(a=0,e=new Array(c=n.arcs.length);a<c;++a)e[a]=a;return{type:"MultiLineString",arcs:h(n,e)}}function o(n,t,r){function e(n){var t=n<0?~n:n;(s[t]||(s[t]=[])).push({i:n,g:u})}function o(n){n.forEach(e)}function a(n){n.forEach(o)}function c(n){n.forEach(a)}function i(n){switch(u=n,n.type){case"GeometryCollection":n.geometries.forEach(i);break;case"LineString":o(n.arcs);break;case"MultiLineString":case"Polygon":a(n.arcs);break;case"MultiPolygon":c(n.arcs)}}var u,f=[],s=[];return i(t),s.forEach(null==r?function(n){f.push(n[0].i)}:function(n){r(n[0].g,n[n.length-1].g)&&f.push(n[0].i)}),f}function a(n){for(var t,r=-1,e=n.length,o=n[e-1],a=0;++r<e;)t=o,o=n[r],a+=t[0]*o[1]-t[1]*o[0];return Math.abs(a)}function c(n,t){function e(n){switch(n.type){case"GeometryCollection":n.geometries.forEach(e);break;case"Polygon":o(n.arcs);break;case"MultiPolygon":n.arcs.forEach(o)}}function o(n){n.forEach(function(t){t.forEach(function(t){(i[t=t<0?~t:t]||(i[t]=[])).push(n)})}),u.push(n)}function c(t){return a(r(n,{type:"Polygon",arcs:[t]}).coordinates[0])}var i={},u=[],f=[];return t.forEach(e),u.forEach(function(n){if(!n._){var t=[],r=[n];for(n._=1,f.push(t);n=r.pop();)t.push(n),n.forEach(function(n){n.forEach(function(n){i[n<0?~n:n].forEach(function(n){n._||(n._=1,r.push(n))})})})}}),u.forEach(function(n){delete n._}),{type:"MultiPolygon",arcs:f.map(function(t){var r,e=[];if(t.forEach(function(n){n.forEach(function(n){n.forEach(function(n){i[n<0?~n:n].length<2&&e.push(n)})})}),e=h(n,e),(r=e.length)>1)for(var o,a,u=1,f=c(e[0]);u<r;++u)(o=c(e[u]))>f&&(a=e[0],e[0]=e[u],e[u]=a,f=o);return e})}}var i=function(n){return n},u=function(n){if(null==(t=n.transform))return i;var t,r,e,o=t.scale[0],a=t.scale[1],c=t.translate[0],u=t.translate[1];return function(n,t){return t||(r=e=0),n[0]=(r+=n[0])*o+c,n[1]=(e+=n[1])*a+u,n}},f=function(n){function t(n){i[0]=n[0],i[1]=n[1],c(i),i[0]<f&&(f=i[0]),i[0]>l&&(l=i[0]),i[1]<s&&(s=i[1]),i[1]>h&&(h=i[1])}function r(n){switch(n.type){case"GeometryCollection":n.geometries.forEach(r);break;case"Point":t(n.coordinates);break;case"MultiPoint":n.coordinates.forEach(t)}}var e=n.bbox;if(!e){var o,a,c=u(n),i=new Array(2),f=1/0,s=f,l=-f,h=-f;n.arcs.forEach(function(n){for(var t=-1,r=n.length;++t<r;)o=n[t],i[0]=o[0],i[1]=o[1],c(i,t),i[0]<f&&(f=i[0]),i[0]>l&&(l=i[0]),i[1]<s&&(s=i[1]),i[1]>h&&(h=i[1])});for(a in n.objects)r(n.objects[a]);e=n.bbox=[f,s,l,h]}return e},s=function(n,t){for(var r,e=n.length,o=e-t;o<--e;)r=n[o],n[o++]=n[e],n[e]=r},l=function(n,r){return"GeometryCollection"===r.type?{type:"FeatureCollection",features:r.geometries.map(function(r){return t(n,r)})}:t(n,r)},h=function(n,t){function r(t){var r,e=n.arcs[t<0?~t:t],o=e[0];return n.transform?(r=[0,0],e.forEach(function(n){r[0]+=n[0],r[1]+=n[1]})):r=e[e.length-1],t<0?[r,o]:[o,r]}function e(n,t){for(var r in n){var e=n[r];delete t[e.start],delete e.start,delete e.end,e.forEach(function(n){o[n<0?~n:n]=1}),i.push(e)}}var o={},a={},c={},i=[],u=-1;return t.forEach(function(r,e){var o,a=n.arcs[r<0?~r:r];a.length<3&&!a[1][0]&&!a[1][1]&&(o=t[++u],t[u]=r,t[e]=o)}),t.forEach(function(n){var t,e,o=r(n),i=o[0],u=o[1];if(t=c[i])if(delete c[t.end],t.push(n),t.end=u,e=a[u]){delete a[e.start];var f=e===t?t:t.concat(e);a[f.start=t.start]=c[f.end=e.end]=f}else a[t.start]=c[t.end]=t;else if(t=a[u])if(delete a[t.start],t.unshift(n),t.start=i,e=c[i]){delete c[e.end];var s=e===t?t:e.concat(t);a[s.start=e.start]=c[s.end=t.end]=s}else a[t.start]=c[t.end]=t;else t=[n],a[t.start=i]=c[t.end=u]=t}),e(c,a),e(a,c),t.forEach(function(n){o[n<0?~n:n]||i.push([n])}),i},p=function(n){return r(n,e.apply(this,arguments))},g=function(n){return r(n,c.apply(this,arguments))},d=function(n,t){for(var r=0,e=n.length;r<e;){var o=r+e>>>1;n[o]<t?r=o+1:e=o}return r},y=function(n){function t(n,t){n.forEach(function(n){n<0&&(n=~n);var r=o[n];r?r.push(t):o[n]=[t]})}function r(n,r){n.forEach(function(n){t(n,r)})}function e(n,t){"GeometryCollection"===n.type?n.geometries.forEach(function(n){e(n,t)}):n.type in c&&c[n.type](n.arcs,t)}var o={},a=n.map(function(){return[]}),c={LineString:t,MultiLineString:r,Polygon:r,MultiPolygon:function(n,t){n.forEach(function(n){r(n,t)})}};n.forEach(e);for(var i in o)for(var u=o[i],f=u.length,s=0;s<f;++s)for(var l=s+1;l<f;++l){var h,p=u[s],g=u[l];(h=a[p])[i=d(h,g)]!==g&&h.splice(i,0,g),(h=a[g])[i=d(h,p)]!==p&&h.splice(i,0,p)}return a},v=function(n,t){function r(n){n[0]=Math.round((n[0]-c)/i),n[1]=Math.round((n[1]-u)/s)}function e(n){switch(n.type){case"GeometryCollection":n.geometries.forEach(e);break;case"Point":r(n.coordinates);break;case"MultiPoint":n.coordinates.forEach(r)}}if(!((t=Math.floor(t))>=2))throw new Error("n must be ≥2");if(n.transform)throw new Error("already quantized");var o,a=f(n),c=a[0],i=(a[2]-c)/(t-1)||1,u=a[1],s=(a[3]-u)/(t-1)||1;n.arcs.forEach(function(n){for(var t,r,e,o=1,a=1,f=n.length,l=n[0],h=l[0]=Math.round((l[0]-c)/i),p=l[1]=Math.round((l[1]-u)/s);o<f;++o)l=n[o],r=Math.round((l[0]-c)/i),e=Math.round((l[1]-u)/s),r===h&&e===p||(t=n[a++],t[0]=r-h,h=r,t[1]=e-p,p=e);a<2&&(t=n[a++],t[0]=0,t[1]=0),n.length=a});for(o in n.objects)e(n.objects[o]);return n.transform={scale:[i,s],translate:[c,u]},n},m=function(n){if(null==(t=n.transform))return i;var t,r,e,o=t.scale[0],a=t.scale[1],c=t.translate[0],u=t.translate[1];return function(n,t){t||(r=e=0);var i=Math.round((n[0]-c)/o),f=Math.round((n[1]-u)/a);return n[0]=i-r,r=i,n[1]=f-e,e=f,n}};n.bbox=f,n.feature=l,n.mesh=p,n.meshArcs=e,n.merge=g,n.mergeArcs=c,n.neighbors=y,n.quantize=v,n.transform=u,n.untransform=m,Object.defineProperty(n,"__esModule",{value:!0})}); |