D3.JS

2017-01-28 123 views
2

在鏈接過渡中進行多個延遲我正在從圖中的點a移動一個矩形到點i,我想爲每個點標記一個5秒的停止延遲(有8個點)。在下面的代碼中轉換工作正常(延遲僅適用於b點)。問題是我無法爲其他轉換添加更多延遲。D3.JS

有沒有辦法做到這一點?

謝謝大家提前。

function TRANSITION(access,dur=10000,Delay=5000,b=390.5,c=523,d=632.5,e=810.8,f=942.5,g=1063,h=1196,i=1334.5) 
      { 
       access.transition().duration(dur).attr('x',b) 
       .transition().delay(Delay).duration(dur).attr('x',c) 
       .transition().duration(dur).attr('x',d) 
       .transition().duration(dur).attr('x',e) 
       .transition().duration(dur).attr('x',f) 
       .transition().duration(dur).attr('x',g) 
       .transition().duration(dur).attr('x',h) 
       .transition().duration(dur).attr('x',i) 
      } 
+0

你想移動一個點,等待5秒,移動下一個點,等待5秒,等等......?什麼是訪問?選擇的要點? – Mark

回答

0

您可以添加,改變任何屬性,但仍然是一個過渡的持續時間:

.transition() 
.duration(dur) 
.attr('x',d) 
.transition() // don't transition anything 
.duration(5000) // but take five seconds doing it 
.transition() 
.duration(dur) 
.attr('x',e) 

我只在第4版測試這一點,所以它是可能的,這可能不是在工作版本3.或者,如果您要保留一些相同的屬性,則可以在延遲轉換中添加.attr行。