2016-08-03 6 views
5

要素にd3.select(this).attr("transform")を実行すると、応答がtranslate(20.00,778)になります。しかし、私は翻訳の個々の価値を得る必要があります。D3 v4要素の値を変換する

v3では、1は

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

しかしd3.transformはV4では使用できません使用することができます。どのように同等の結果を達成するには?

+1

独自の関数を作成することで、それを実現できます。この回答は、それを行う方法を示しています:http://stackoverflow.com/a/38230545/5768908 –

+0

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

答えて

5

これを試してください。

string = element.attr("transform"); 

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

次に、translate [0]とdyによってtranslate [1]によってdxにアクセスできます。

+1

D3関数を使用するときれいですが、これは当分の間役に立ちます – Joel

+0

これは、辺では機能しません。辺では、translate(10,20)の代わりにtranslate(10 20) chromeやfirefoxのように。 – user2553930

関連する問題