1
我想在每個條的後面添加另一個rect
元素,但我努力做到這一點,因爲d3.js不允許爲每個數據點添加另一個元素。d3.js爲每個數據點創建兩個元素
http://jsfiddle.net/g5hpwf0m/2/
var w = parseInt(d3.select(self).style("width")),
h = parseInt(d3.select(self).style("height")),
svg = d3.select(self)
.append("svg")
.attr("width", w)
.attr("height", h),
yScale = d3.scale.linear()
.domain([0, d3.max(dataset)])
.range([0,h]);
svg.selectAll("rect")
.data(dataset)
.enter()
.append("rect")
.attr("fill", "green")
.attr("x", function(d, i) {
return i * (w/dataset.length);
})
.attr("y", function(d) {
return h - yScale(d);
})
.attr("width", w/dataset.length - barPadding)
.attr("height", function(d){return yScale(d);});
我嘗試添加這一點,但它不會做任何事情。
svg.selectAll("rect")
.data(dataset)
.enter()
.append("rect")
.attr("fill", "black")
.attr("x", function(d, i) {
return i * (w/dataset.length);
})
.attr("y", function(d) {
return h - yScale(d);
})
.attr("width", w/dataset.length - barPadding)
.attr("height", "100%");
需要在同一水平增加2個rects? – Fawzan
就像小提琴上的圖像一樣,我想要1個矩形作爲條形的背景灰色框,然後是另一個代表實際數據點的矩形。 – ditto