0
私は本当にd3を学ぶのが大変なので、この質問で私を助けてくれることを願っています。私は、そのデータに数値があるので、y座標のsvgにデータを拡大縮小またはマップする方法を考え出しました。私はそれをどのように下に示すでしょう。しかし、xの値については、1mo、2mo、3moなどのような数字だけの数字はありません。これらを折れ線グラフのx座標に変換したいと思います。それらは、グラフの幅に沿って均等に分散する必要があります。うまくいけば、私はx座標を得る方法を教えてくれるので、ラインジェネレータを使ってパスを作成することができます。折れ線グラフの文字列値(テキスト)からx座標を作成する
var data = [
{"quarter" : "1mo", "votes" : 400},
{"quarter" : "2mo", "votes": 200},
{"quarter": "3mo", "votes" : 1000},
{"quarter" : "4mo", "votes" : 600}
]
var width = 600;
var height = 300;
//supposed to get the domain ([0, 1000])
var yscale = d3.scale.linear().domain([0, d3.max(data, function(d) {return d.votes})])
yscale.range([height, 0])
console.log(yscale(30)) //291
//now I need to get the x cordinates
感謝。私はちょうどこれを考え出した。 –
本当に 'rangeBands'に' .1'が必要ですか?それは私の折れ線グラフをより良く見せるでしょうか? –
@ジャックブランク、それはあなた次第です。ティックは等間隔で、 '0.1'は最初と最後のティック(y軸から離れています)にもう少しパディングを与えます。 [ここ](https://github.com/mbostock/d3/wiki/Ordinal-Scales#ordinal_rangePoints)を読んでください。 – Mark