私は2列のブートストラップを使ってレスポンシブなレイアウトを作っていました。私の左のカラムはd3フォースレイアウトチャートを持っています。Javascriptでd3 svgチャートの現在のサイズプロパティにアクセスするにはどうすればよいですか?
以前私は、固定サイズを使用し、それがノードチャート(Iスタックにここに見出さ溶液)に賢明な配置を持っていることを確認するために他の関数によって使用される定数を算出したと:
今var w = 400,
h = 400,
r = 6,
k = Math.sqrt(nodes.length/(w * h)),
fill = d3.scale.category20();
var force = d3.layout.force()
.gravity(100 * k).charge(-10/k)
.linkDistance(30)
.nodes(nodes).links(links)
.start();
私は応答のレイアウトがある、私はw
とh
を使用することはできません。むしろ、私は定数を計算することができるように、現在のwidth
とheight
を見るために何らかのゲッターが必要です。
私は、Javascriptのコードに新たなんだので、これは、私は、コンソールを探ることを思い付いたのが最善です:
d3.select("#chart").property('height')['animVal']['value']
d3.select("#chart").property('width')['animVal']['value']
は、私がこれをやるべきか、このですか?より直接的な機能はありますか?これは私にとっては醜いようです。
getBBox()またはgetBoundingClientRect()で簡単に手に入るものではありませんか? – elias