【发布时间】:2013-12-29 21:37:36
【问题描述】:
我想让我的 svg 路径(线)有边框,这样轮廓是黑色的,但内部是另一种颜色。行号:
self.lineFunction = function(dat) {
var self = this
var line = d3.svg.line().interpolate('linear');
var data = dat.map(function(d) {
return [self.xScale(d[0]), self.yScale(d[1].mean)];
});
return line(data);
}
self.lines = self.svg.selectAll('.line')
.data(d3.keys(self.data), function(d) {return d})
.enter()
.append('path')
.attr('d', function(d) {return self.lineFunction(self.data[d])})
.attr('class', 'line')
.style('stroke', 'blue')
.style('stroke-width', '2')
.style('fill', 'none');
【问题讨论】:
-
你不能用一行来做这个,但是你可以使用
path元素来代替。 -
我明白你在说什么@LarsKotthoff - 有没有办法将我的 lineFunction 代码转换为路径生成器,然后我可以添加边框?
-
您可以使用区域生成器,对 y0 使用实际 y 坐标,对 y1 使用实际 + 边距。 x 类似。
-
我认为这是一种比 2 行更优雅的方法——如果你想把它标记为答案@LarsKotthoff
标签: javascript css svg d3.js