まず、あなただけ作成する必要があります> 2000
の値を持つ変数
これは私がやった方法(私は先週d3
を開始し、私はJavaScript
上の任意の以前の知識を持っていないので、それを行うには良い方法はおそらくあります)です。
var data = [];
for (var i = 0; i < oldData.length; ++i) {
if (oldData[i] >= 2000) {
data[i] = 2000;
}
else data[i] = oldData[i];
}
var ticks = [0,200,400,600,800,1000,1200,1400,1600,1800,2000];
var tickLabels = [0,200,400,600,800,1000,1200,1400,1600,1800,"> 2000"];
:次事は、手動で設定したいティックとそれに対応tickLabels Oであり、 (あなたは「1200」に変更することができることに気づくというようにあなたは、セパレータをしたい場合)
を、代わりに自分のチャートに直接d3.axisBottom(x)
を呼び出すので、私は別のxAxis
変数を作成したい、とにダニやtickLabelsを設定それ:
var xAxis = d3.axisBottom(x)
.tickValues(ticks)
.tickFormat(function(d,i){ return tickLabels[i] });
最後あなたは、チャート上xAxis
を呼び出す:
chart.append("g")
.attr("class", "axis axis--x")
.attr("transform", "translate(0," + height + ")")
.call(xAxis);
それを調べるために@ TheBiroに感謝します。私は運がなければあなたのリンクに提案と試してみました。この問題を解決する方法を考えることができる場合は、この例をフォークしてください。https://plnkr.co/edit/jLkoMxdzArBBULHF80nb – Adrian
あなたのコードへのリンクが表示されませんでしたが、私の答えは正解です。 – TheBiro