Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript D3:选择SVG属性并更改它_Javascript_Svg_D3.js - Fatal编程技术网

Javascript D3:选择SVG属性并更改它

Javascript D3:选择SVG属性并更改它,javascript,svg,d3.js,Javascript,Svg,D3.js,如果我有一个SVG var canvasBars = d3.select("#chart1").append("svg") .attr("width", width + margin.left + margin.right) .attr("height", height + margin.top + margin.bottom) .append("g") .attr("transform", "translate("+margin.left+","+margin.top+")"); 如

如果我有一个SVG

var canvasBars = d3.select("#chart1").append("svg")
.attr("width", width + margin.left + margin.right)
.attr("height", height + margin.top + margin.bottom)    
.append("g")
.attr("transform", "translate("+margin.left+","+margin.top+")");
如果修改宽度变量(用于计算宽度属性),那么如何选择宽度属性并使用此新宽度变量进行修改

这似乎不起作用:

canvasBars.attr("width", width + margin.left + margin.right);

另一个选项是确保前一个“canvasBars”变量实际上是画布

var svgSelection = d3.select("#chart1").append("svg")
.attr("width", width + margin.left + margin.right)
.attr("height", height + margin.top + margin.bottom)

var baseGroup = svgSelection.append("g")
.attr("transform", "translate("+margin.left+","+margin.top+")");
你以前的“画布”我已经改名为“svgSelection”。如果您想直接修改“画布”,那么您以前的想法现在就行了

svgSelection.attr("width", width + margin.left + margin.right);