d3とAngularJSを使用するデータ視覚化インターフェイスの一部としてボックスプロットを実装しようとしています。私はこのボックスプロットパッケージで働いています:https://bl.ocks.org/mbostock/4061502。d3.js Box Plot Positioning with box.js
しかし、サンプルコードのどの部分がボックスプロットの位置を制御しているのかわかりません。この例では、5つのボックスプロットが順番に並べられています。私のプロットを生成しようとすると、それらはすべて互いに上に表示されます。ここで
私は箱ひげ図を生成するために使用しているコードです:
boxplots = svg.selectAll("svg")
.data(boxPlotData)
.enter().append("svg")
.attr("class", "box")
.attr("width", boxWidth + margin.left + margin.right)
.attr("height", boxHeight + margin.bottom + margin.top)
.append("g")
.attr("transform", "translate(" + margin.left + "," + margin.top + ")")
.call(chart);
は、ここに私のSVGキャンバスを作成する方法のためのコードです。これは、角度指令で行われます。
template:"<svg width='825' height='600'></svg>",
link: function($scope, elem){
var d3 = $window.d3;
var rawSvg=elem.find('svg'); // this is the svg created in the template
var width = rawSvg[0].attributes[0].value;
var height = rawSvg[0].attributes[1].value;
var svg = d3.select(rawSvg[0]);
編集:まだ完璧ではないが、行き方:
あなたが作成する '
オリジナルの投稿をSVGキャンバスを作成するコードで更新しました。私はSVG要素をボックスプロットの親として持っているので、それらは両方とも開始位置の(0、0)にデフォルト設定されているようです。私はそれらを正しい場所に翻訳する必要があると仮定していますか?そのコードはどこに行きますか?彼らは一度に作成されているので、私はそれらに異なる座標をどのように与えるのか分かりません。 –