d3 画曲线

准备工作创建画布、创建组之类的省略。
准备数据,并用比例尺扩大到整个画布(画布大小自己设置)

let data = [1,3,4,5,5]
let scale_x = d3.scaleLinear()
	.domain([0, data.length - 1])
	.range([0, this.svgWidth])
let scale_y = d3.scaleLinear()
	.domain([0, d3.max(data)])
	.range([0, this.svgHeight])

曲线生成器:

let curve_generator = d3.line()
	.x( (d) => scale_x(d) )
	.y( (d) => scale_y(d) )
	.curve(d3.curveBasis)

画出 path

svg.append('path')
	.attr('d', curve_generator(data)
	.attr('stroke', 'gray')
	.attr('stroke-width', 2)
	.attr('fill', 'none')

效果

在这里插入图片描述