_pieChartData() { const { data, type } = this.state; return d3 .pie() .sort(null) .value(d => d[type])(data.filter(obj => obj[type] > 0)); }
d3.pie().value(d => +d.screentime)
const AnimatedPiechart = ({ x, y, r, data }) => { let pie = d3.pie() .value((d) => d.value)(data) .sort((a, b) => d3.ascending(a.data.i, b.data.i)), translate = `translate(${x}, ${y})`, colors = d3.scaleOrdinal(d3.schemeCategory10); return ( <g transform={translate}> {pie.map((d, i) => ( <Arc key={`arc-${i}`} data={d} innerRadius="0" outerRadius={r} color={colors(d.data.i)} /> ))} </g> ); }
render(){ const {x,y,r,data} = this.props; let pie = d3.pie() .value((d)=>(d.value))(data) .sort((a,b)=>d3.ascending(a.data.i,b.data.i)); let translate = `translate(${x},${y})`; let colors = d3.scaleOrdinal(d3.schemeCategory10); return ( <g transform={translate}> { pie.map((d,i)=>( <Arc key={i} data={d} innerRadius="0" outerRadius={r} color={colors(d.data.i)}/> )) } </g> ); }
this.colors = d3.scaleOrdinal(d3.schemeCategory10); this.createPie = d3 .pie() .value(d => d.value) .sort(null);
d3.pie() .sort(null) .padAngle(0.02) .value(function(d) { return d.population; })
.pie() .value(valueMap) .padAngle(padAngle)