2014-01-09 9 views
5
私はdc.jsに取り組んでいます

を設定する円グラフ、私は特定のx軸の値を設定したい、今すぐ dc.jsは、特定のx軸値

pieChart.width(300) 
    .height(200) 
    .transitionDuration(1500) 
    .dimension(startValue) 
    .group(startValueGroup, "StartValue") 
    .radius(100) 
    .minAngleForLabel(0.5) 
    .legend(dc.legend().x(230).y(0)) 
    .title(function(d) { 
     return d.key + ": " + d.value; 
    }) 
    .renderTitle(true) 
    .on("filtered", function (chart) { 
     dc.events.trigger(function() { 
      //console.log(total_payment); 
      }); 
    }); 

pieChartの

を描いています。現在、pieChartは幅と高さを定義する中心位置を取っています。それは(150,100)の位置を取っていることを意味します。私はこのポジションを(100,100)に変更したいと思います。

上記コードのようにx軸の位置を変更するにはどうすればよいですか?

答えて

4

これはDCオプションで直接設定することはできませんが、グラフがレンダリングされた後でこれらの値を変更することはできます。 「パイ」はあなたに円グラフをレンダリングDOM要素のIDであると仮定すると、あなたは

d3.select("#pie > svg > g").attr("transform", "translate(100,100)"); 
+0

素晴らしい、私は最後のいくつかの日から同じ問題で苦労しています。ご協力ありがとうございました。 –

1

を行うことができます私はそれが古いポストで、答えは完璧に動作しますが、チャートはの一部である場合ことを知っています

pieChart.on('renderlet', function (chart) { 
    chart.select("svg > g").attr("transform", "translate("100,100)"); 
}); 

編集:私は簡単にこれを行うことにより、チャートに直接上記のコマンドを追加した、より大きなシステム(いくつかのチャート)

は、実際に私はちょうどあなたが行うことができますアウトが見つかりました:

.cx(100) 
.cy(100) 

円グラフの中心をレンダリングする前に100,100に設定します。

+0

これはあなたが何かを選択するたびにパイのグリッチ移動を見ることができますと動作しています。 –

+0

cx()とcy()を使った2番目の解が正しい答えです。ありがとう –

関連する問題