【发布时间】:2014-02-15 02:20:50
【问题描述】:
我有一个画圆圈的功能(canvasCPI 和 canvasGDP 是我的 svgs):
var CPIforecircles = canvasCPI.append("g");
var GDPforecircles = canvasGDP.append("g");
function drawGDPForecastCircles(theNum){
GDPforecircles.append("circle")
.attr("r", 3)
.attr("class", "circleGDPFore")
.style("display", null)
.attr("transform", "translate(" + xScaleQuarterly(dataForecast[theNum].date) + "," + yScaleGDP(dataForecast[theNum].GDPforecast) + ")");
}
function drawCPIForecastCircles(theNum){
CPIforecircles.append("circle")
.attr("r", 3)
.attr("class", "circleCPIFore")
.style("display", null)
.attr("transform", "translate(" + xScaleQuarterly(dataForecast[theNum].date) + "," + yScaleCPI(dataForecast[theNum].CPIforecast) + ")");
}
然后通过我的脚本调用这个函数来绘制越来越多的圆圈:
function generateCirclesFore(indexNum){
for (var i=indexNum; i<counterFore+1; i++){
drawGDPForecastCircles(i);
drawCPIForecastCircles(i);
}
}
最终我有两个组元素(CPIforecircles 和 GDPforecircles),标签内有很多圆圈,但是如何选择这些圆圈作为数组,然后将显示样式应用于 none (.style("display", "none ")) 到该数组中的某些圆圈?
【问题讨论】:
-
d3.selectAll(".circleCPIFore").filter(function(d) { d.someProp == someCriteria;}).style("display","none");?
标签: javascript d3.js selection selector