2016-08-03 24 views
5

değerlerini çevirmek alın, ben bir yanıt translate(20.00,778) olsun. Bununla birlikte, bireysel tercüme değerleri almam gerekiyor.D3 v4 Bir elemanın

v3, bir

var t = d3.transform(element.attr("transform")); 
t.translate; 

Ancak d3.transform v4 mevcut değildir kullanabilir. Eşdeğer bir sonuç nasıl elde edilir?

+1

Kendi işlevinizi oluşturarak bunu başarabilirsiniz. Bu cevap nasıl yapılacağını gösterir: http://stackoverflow.com/a/38230545/5768908 –

+0

https://stackoverflow.com/questions/20340263/d3-retrieve-and-add-to-current-selections-attribute- değer –

cevap

5

Bunu deneyin.

string = element.attr("transform"); 

translate = string.substring(string.indexOf("(")+1, string.indexOf(")")).split(","); 

Sonra çevirmek tarafından tercüme [0] ve dy tarafından dx erişebilirsiniz [1].

+1

D3 işlevini kullanmak temiz olsa da, bu zamanın – Joel

+0

olması için yardımcı olur. Bu, Kenar olarak çalışmadığı için kenar, argümanları çeviri yerine çevirme (10 20) gibi boşluklarla ayırır (10,20) krom ve firefox gibi. – user2553930