= parseInt(lengthArray2[j].min)) && (o.valueNum2 <= parseInt(lengthArray2[j].max))) {
centerx = wScale(j);
}
};
break;
}
} else {
labelsArray = [varAll];
centerx = 1;
}
o.x += (center.x * centerx - o.x) * e.alpha * 0.04;
o.y += (center.y - o.y) * e.alpha * 0.04;
});
d3.select("#labels").text( labelsArray.join(" - ") );
d3.selectAll('.coreC').attr("transform", function(d) { return ['translate(', d.x, ', ', d.y, ')'].join(''); });
d3.selectAll('.dataC').attr("transform", function(d) { return ['translate(', d.x, ', ', d.y, ')'].join(''); });
})
.start();
/* -------------------------
各円の中心にある白い円の描画
------------------------- */
var coreCircles = coreContainer.selectAll('.coreC')
.data(data)
coreCircles.enter()
.append('circle')
.attr('class', 'coreC')
.attr('r', 0)
.attr('fill', "#FFF")
.call( self.force.drag )
coreCircles
.transition()
.duration(1100)
.delay(function(d, i) { return i * 10; })
.attr('fill', "#FFF")
.attr('r', 2);
/* -------------------------
データによりサイズが変化する色のついた円の描画
------------------------- */
var dataCircles = dataContainer.selectAll('.dataC')
.data(data)
dataCircles.enter()
.append('circle')
.attr('class', 'dataC')
.attr('r', 0)
.attr('fill', function(d){
return "#FFFFFF";
})
.call( self.force.drag )
dataCircles
.transition()
.duration(1100)
.delay(function(d, i) { return i * 10; })
//円を描画
.attr('fill', function(d){
return self.colors[d.valueString1];
})
//円の大きさと値を関連づける
.attr('r', function(d){
return Math.sqrt(d.valueNum1) * circleScale;
});
dataCircles.on('mouseenter', function(d){
d3.select(this)
.attr('class', 'dataC active')
d3.select('#tooltip')
.attr('class', 'active')
.html([
'', d.name, '
',
'', varString1 + ":", d.valueString1, '
',
'', varNum1 + ":", d.valueNum1, '
',
'', varNum2 + ":", d.valueNum2, '
'
].join(''));
});
dataCircles.on('mouseleave', function(d){
d3.select(this).attr('class', 'dataC')
d3.select('#tooltip').attr('class', 'deactive');
});
}
};
this.init.apply( this, arguments );
};
var chart = new Chart;
});