0

私は何が起こっているのかを理解しましたが、それを修正する方法はありません。

csv ファイルから読み取るグラフを作成しましたが、この部分は非常にうまく機能します。ただし、完成後にコードに触れたくないので。これが、csvファイルからデータを取得して変数に変換するための最良/最も簡単な方法を求めている理由です。

すべてのコードはこちらにあります。この件について Scott Cameron と話し合っていたところ、私が直面していた問題を発見しました。

愚かなことに、私はこのコードがうまくいくと思って入れました。(d.avrNum は、変数に変換したいものです。)

dataEnter.append("rect")
.attr("fill",function(d,i){return color(i);})
.attr("y", function(d, i){return i * horizontalBarDistance - barYOffset;})
.attr("x", barXOffset)
.attr("height", function(d){return barWidth;}) 
.attr("width", function(d){return d.data * (graphWidth / d.varNum)});

最後の行は、変数番号が必要な場合です。d.data のように、d.varNum は次の番号を読み取ります。ただし、d.varNum には 1 つの数値しかないため、これは機能しません。

1 の数字を使い続けたいので、d.varNum から変数を作成する必要があります。誰かが私を助けてくれれば、本当に感謝しています。

コードについて質問する前に、コードを確認してください。


アップデート


私はもう少し周りを見回して、これを見つけました。..私はそれを機能させようとしましたが、このコードを本当に理解していません。

これは私が得たものです

var rawTarget = ["d.Target"];
var targetNum = rawTarget.slice(2,3,4,5);

配列がまったく見えないように動作します。

私が言ったように、私が望むのは、変数として使用される最初の数字(数字が1つしかないため)だけです。私がそれを機能させることができれば、私のグラフの maxData の代わりになります。

4

1 に答える 1

0

あなたが何を求めているのか、少し理解できません。描画している四角形の数を varNum に参照させたい場合は、次のコードが機能します。

var varNum = data.length;
...
  .attr("width", function(d){return d.data * (graphWidth / varNum)});
于 2013-09-02T05:08:27.187 に答える