Published
Edited
May 16, 2018
3 stars
Insert cell
Insert cell
Insert cell
Insert cell
r=300
Insert cell
sortConfig = [4,1,3,2,5,6]
Insert cell
arr = d3.range(divideCount).map(d=>d+1)
Insert cell
ordered = {
if(arr.length==1){
return [1];
}
if(arr.length==2){
return [1,2];
}
if(arr.length==3){
return [1,3,2];
}
if(arr.length==4){
return [4,1,3,2];
}
if(arr.length==5){
return [4,1,3,2,5];
}
if(arr.length==6){
return [4,1,3,2,5,6];
}
var result=[];
var rightCount=1;
var leftCount=1
arr.forEach((d,i)=>{
if(i<sortConfig.length){
result.push(sortConfig[i])
}
if(i>=sortConfig.length){
debugger;
var endDiff = result[result.length-1]-result[result.length-2];
var startDiff = result[0]-result[1];
if(endDiff==1 & startDiff==1 && result[i-1]==d-1){
result.unshift(d);
return;
}
if(endDiff==1 & startDiff==1){
result.push(d);
return;
}
if(endDiff==3 ){
result.push(d);
return;
}
if(endDiff==1 & startDiff==3){
result.unshift(d);
}
}
})
return result;
}
Insert cell
angle = pi/(divideCount+1)
Insert cell
angles=d3.range(divideCount+1).map(d=>angle*(d+1))
Insert cell
xs = angles.map(angle=>r-Math.cos(angle)*r).slice(0,angles.length-1)
Insert cell
ys = angles.map(angle=>Math.sin(angle)*r).slice(0,angles.length-1)
Insert cell
ysDescnding = ys.slice().sort((a,b)=>a<b)
Insert cell
pi = Math.PI
Insert cell
d3 = require('d3')
Insert cell
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more