Javascript 设置SVG元素的宽度和高度-d3.js

Javascript 设置SVG元素的宽度和高度-d3.js,javascript,jquery,css,svg,d3.js,Javascript,Jquery,Css,Svg,D3.js,我正在用d3建立一个图表 现在,我尝试设置区域的宽度和高度,如下所示- var area2 = d3.svg.area() .interpolate("monotone") .attr("width", this.options.width) .attr("height", 100); 但是,我得到了这个错误-- 未捕获类型错误:未定义不是函数 看这里- 注意:我已经测试并了这个.options.width不是空的

我正在用d3建立一个图表

现在,我尝试设置区域的宽度和高度,如下所示-

   var area2 = d3.svg.area()
            .interpolate("monotone")
            .attr("width", this.options.width)
            .attr("height", 100);
但是,我得到了这个错误--

未捕获类型错误:未定义不是函数

看这里-

注意:我已经测试并
了这个.options.width
不是空的-它的值是1727


我不熟悉d3和SVG,任何建议都会有所帮助。

SVG.area提供x、y0和y1(正如前面代码中所述)。y0到y1是图(x轴)的底部到顶部-如果是线图,则是线的底部

这听起来像是你想要的:

  var area2 = d3.svg.area()
        .x(function(d) { return x(d.X_VARIABLE); })
        .y0(height)
        .y1(function(d) { return y(d.Y_VARIABLE); });
很好的例子:


正如作者所指出的,您也应该为x和y定义域(如果您没有定义域的话)

看看SVG区域是如何运行的。您没有提供高度和宽度。您提供x、y0和y1。好吧,拿我的业力来说:)