4

d3で単純な棒グラフを作成し、y軸を「.ticks(3)」でフォーマットしました。これは、3つの目盛りを表示したいことを示しています。ただし、データによっては、目盛りが3つある場合と、4つある場合があります。また、目盛りが3つある場合でも、目盛りは軸ラベルの約1/4で、次に50%、次に別の目盛りがあります。 3/4で。d3に3つの軸ラベルを強制的に設定するにはどうすればよいですか?1つは下部、1つは中央、もう1つは上部にありますか?

4

1 に答える 1

5

目盛りの配列を軸に渡すことができます。そうすると、軸は配列内のポイントに目盛りをプロットします。

ここにいくつかのサンプルコードがあります。0から100の間で実行される軸が作成されます。目盛りは、「目盛り」配列に従って0、50、60、および100にプロットされます。

svg = d3.select("svg")

var myScale = d3.scale.linear()
        .domain([0,100])
        .range([0,400]);


var ticks = [0,50,60,100];

var myAxis = d3.svg.axis()
  .scale(myScale)
  .tickValues(ticks);

svg.append("g")
.attr("class", "axis")
.call(myAxis)
.attr("transform","translate(100,100)");

インタラクティブな例を次に示します。http: //tributary.io/inlet/5207532

于 2013-03-20T19:20:39.683 に答える