将d3js画笔从v3转换为v4

时间:2019-07-25 10:26:44

标签: javascript d3.js

我正在尝试获取Nadieh Bremer带有画笔代码的棒条形图,并将其从d3.js v3更新到v4。

我设法移植了新的scale()和axis()函数,但是我对如何更新brush()感到迷惑不解。我已经尝试遵循之前的此类解答,但无济于事-D3.js v3 to v4 Brush changes

有人可以协助我将此代码转换为v4吗?

Nadieh的v3源代码: Source Code Link
我的v4尝试My Attempt

我已经进行了以下转换:

  • scale.linear() -> scaleLinear()
  • scale.ordinal().rangeBands() -> scaleBand().rangeRound()
  • d3.behavior.zoom() -> d3.zoom()
  • d3.svg.axis().scale(main_xScale) -> d3.axisBottom(main_xScale)
  • d3.svg.axis().scale(main_yScale) -> d3.axisLeft(main_yScale)

但是尝试更改d3.svg.brush()会导致错误

brush = d3.svg.brush()
      .y(mini_yScale)
      .extent([mini_yScale(data[0].country), mini_yScale(data[brushExtent].country)])
      .on("brush", brushmove)
  //.on("brushend", brushend);
  

无法读取未定义的属性“画笔”

0 个答案:

没有答案