D3バージョン4.xでは、d3.scale.ordinal()
が_d3.scaleOrdinal
_に変更され、_d3.rangeRoundBands
_が次のように変更されました。
_d3.scaleBand()
.rangeRound([range]);
_
バンドの幅を見つけるには、d3.rangeBand()
と同等のものは何ですか?
バンドスケールでバンドの幅を見つけるには、使用する必要があります。
_scale.bandwidth();
_
[〜#〜] api [〜#〜] 、bandwidth()
によると:
各バンドの幅を返します。
デモは次のとおりです。
_var scale = d3.scaleBand()
.domain(["foo", "bar", "baz", "foobar", "foobaz"])
.range([0, 100]);
console.log("The width of each band is " + scale.bandwidth() + " pixels")
_
_<script src="https://d3js.org/d3.v5.min.js"></script>
_
ご覧のとおり、帯域幅は、ドメイン内の要素の数、範囲の範囲、およびパディングに依存します。これは上記と同じスニペットで、パディングがあります:
_var scale = d3.scaleBand()
.domain(["foo", "bar", "baz", "foobar", "foobaz"])
.range([0, 100])
.paddingOuter(0.25)
console.log("The width of each band is " + scale.bandwidth() + " pixels")
_
_<script src="https://d3js.org/d3.v5.min.js"></script>
_