2014-02-11 25 views
0

我有一個函數來繪製圓(canvasCPI和canvasGDP是我svgs):D3-如何選擇一組元素界,並設置顯示爲none

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」))只在該數組中的某些圓圈?

+3

'd3.selectAll( 「circleCPIFore 」)過濾器(函數(d){d.someProp == someCriteria;})風格(「 顯示」, 「無」) ;'? – FernOfTheAndes

回答

0

我決定把我的評論作爲一個答案,所以這不是沒有答案正式離開。另外,我相信答案是準確的。所以,在這裏,它是:。

selectAll(".circleCPIFore") 
    .filter(function(d) { d.someProp == someCriteria;}) 
    .style("display","none"); 
相關問題