Javascript d3-画n次线
我用Javascript d3-画n次线,javascript,d3.js,Javascript,D3.js,我用d3绘制了一条垂直线。假设我想像条形码一样重复几次这行代码。我该怎么做 我知道这必须使用for来完成,但我不知道如何做 建议将非常有用 代码如下: var height = 500; var width = 500; var svgContianer = d3.select("body") .append("svg") .attr("width", width)
d3
绘制了一条垂直线。假设我想像条形码一样重复几次这行代码。我该怎么做
我知道这必须使用for
来完成,但我不知道如何做
建议将非常有用
代码如下:
var height = 500;
var width = 500;
var svgContianer = d3.select("body")
.append("svg")
.attr("width", width)
.attr("height", height)
var line = svgContianer.append("line")
.attr("x1", 20)
.attr("x2", 20)
.attr("y1", 100)
.attr("y2", 0)
.attr("stroke", "#000")
.attr("stroke-width", 2)
var高度=500;
var宽度=500;
var svgContianer=d3.选择(“主体”)
.append(“svg”)
.attr(“宽度”,宽度)
.attr(“高度”,高度)
var line=svgContianer.append(“行”)
.attr(“x1”,20)
.attr(“x2”,20)
.attr(“y1”,100)
.attr(“y2”,0)
.attr(“笔划”,“千”)
.attr(“笔划宽度”,2)
提前感谢。对于循环,有比使用
更好的选择。但无论如何
var高度=500;
var宽度=500;
变量计数=10,填充=5;
var svgContianer=d3.选择(“主体”)
.append(“svg”)
.attr(“宽度”,宽度)
.attr(“高度”,高度)
对于(变量i=0;i
对于
循环,有比使用更好的选项。但无论如何
var高度=500;
var宽度=500;
变量计数=10,填充=5;
var svgContianer=d3.选择(“主体”)
.append(“svg”)
.attr(“宽度”,宽度)
.attr(“高度”,高度)
对于(变量i=0;i
对于
循环,有比使用更好的选项。但无论如何
var高度=500;
var宽度=500;
变量计数=10,填充=5;
var svgContianer=d3.选择(“主体”)
.append(“svg”)
.attr(“宽度”,宽度)
.attr(“高度”,高度)
对于(变量i=0;i
对于
循环,有比使用更好的选项。但无论如何
var高度=500;
var宽度=500;
变量计数=10,填充=5;
var svgContianer=d3.选择(“主体”)
.append(“svg”)
.attr(“宽度”,宽度)
.attr(“高度”,高度)
对于(变量i=0;i
如果要创建条形码,D3的方法是将每一行(元素)与其宽度(数据)绑定,然后使用D3的进入阶段来构建它们
此外,对于条形码,您还需要将形状渲染
转换为crispEdges
var高度=500;
var宽度=500;
var svgContianer=d3.选择(“主体”)
.append(“svg”)
.attr(“宽度”,宽度)
.attr(“高度”,高度)
var line=svgContianer.selectAll(“行”)
.数据([1,2,1,3,2,1,3,2,1,3,2,1,3,2,4,3,1,2,2,2,1,3,2])
.输入()
.附加(“行”)
.attr(“x1”,函数(d,i){
返回20+5*i;
})
.attr(“x2”,函数(d,i){
返回20+5*i;
})
.attr(“y1”,100)
.attr(“y2”,0)
.attr(“笔划”,“千”)
.attr(“笔划宽度”,函数(d){
返回d;
})
如果要创建条形码,D3的方法是将每一行(元素)与其宽度(数据)绑定,然后使用D3的进入阶段来构建它们
此外,对于条形码,您还需要将形状渲染
转换为crispEdges
var高度=500;
var宽度=500;
var svgContianer=d3.选择(“主体”)
.append(“svg”)
.attr(“宽度”,宽度)
.attr(“高度”,高度)
var line=svgContianer.selectAll(“行”)
.数据([1,2,1,3,2,1,3,2,1,3,2,1,3,2,4,3,1,2,2,2,1,3,2])
.输入()
.附加(“行”)
.attr(“x1”,函数(d,i){
返回20+5*i;
})
.attr(“x2”,函数(d,i){
返回20+5*i;
})
.attr(“y1”,100)
.attr(“y2”,0)
.attr(“笔划”,“千”)
.attr(“笔划宽度”,函数(d){
返回d;
})
如果要创建条形码,D3的方法是将每一行(元素)与其宽度(数据)绑定,然后使用D3的进入阶段来构建它们
此外,对于条形码,您还需要将形状渲染
转换为crispEdges
var高度=500;
var宽度=500;
var svgContianer=d3.选择(“主体”)
.append(“svg”)
.attr(“宽度”,宽度)
.attr(“高度”,高度)
变量行=svgContianer.sel
var height = 500;
var width = 500;
var count = 10, padding = 5;
var svgContianer = d3.select("body")
.append("svg")
.attr("width", width)
.attr("height", height)
for(var i = 0; i < count; ++i) {
var line = svgContianer.append("line")
.attr("x1", padding*i)
.attr("x2", padding*i)
.attr("y1", 100)
.attr("y2", 0)
.attr("stroke", "#000")
.attr("stroke-width", 2)
}