nvd3 lineWithFocusChart调整大小时无效值错误

时间:2016-04-18 14:18:00

标签: d3.js nvd3.js

具有时间刻度d3.time.format的LineChart将使用窗口流畅地调整大小。 lineWithFocusChart在绘制时从不会出现错误,但在调整大小时会抛出许多:

d3.js:8756 Error: Invalid value for <rect> attribute width="NaN"

有时错误会在mouseup上停止,但很多时候它会在调整大小后继续抛出,这相当于内存泄漏。

我正在寻找这种图表类型的工作示例,以响应布局显示日期/时间,或者使用焦点笔刷调整大小来处理时间数据的推荐方法。

我尝试过的事情:

  • 在我的数据上使用parseDate() - 无需更改

  • 使用不同的时间刻度 - 无变化

  • 将图表转换设置为0 - 无更改

日期是Javascript日期对象 - 即新日期() 使用nvd3调整大小:

                nv.utils.windowResize(function () {
                    chart.update();
                });

1 个答案:

答案 0 :(得分:0)

使用最新的nvd3解决方法:

chart.focusEnable( false );
chart.update();
chart.focusEnable( thisWidget.showZoomStrip );

其中thisWidget.showZoomStrip是我用于显示画笔的本地设置,因此这适用于常规折线图。这是可能的,因为最新的(1.8.2)组合了LineChart和LineWithFocusChart,所以我可以在调整大小时关闭画笔。