【问题标题】:nvd3 - How to redraw axis on windows resizenvd3 - 如何在窗口调整大小时重绘轴
【发布时间】:2016-06-30 21:06:10
【问题描述】:

我一直在尝试解决这个问题,但没有成功。

我需要能够调整我的图表大小并在窗口调整大小时更新比例(目前只有 X)。

我尝试使用 nv.utils.windowResizewindow.on("resize", update); 但以上都不起作用。

每次都会调用生成我的轴的函数(到达console.log),但由于某种原因,图表中的轴没有更新。

有什么建议吗?这是我第一次尝试使用 D3 和 NVD3,有点复杂。

感谢您的耐心和支持,这是一个示例代码(使用 Angular js):http://codepen.io/NickHG/pen/rLWNea?editors=0010

【问题讨论】:

    标签: angularjs d3.js nvd3.js


    【解决方案1】:

    看起来我设法解决了这个问题。

    文档中根本不清楚,但这就是我所做的:

    var width = window.innerWidth;
    var xScale =  d3.time.scale().domain([date, date]).nice(d3.time.day).range([0, width])   
    
    chart.xAxis.scale(xScale)
               .ticks(6)
               .tickFormat(d3.time.format("%H:%M"))  
    
    nv.utils.windowResize(function() {
                width = window.innerWidth;
                chart.xAxis.range([0, width])
                chart.update()     
    });   
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-22
      • 2014-01-01
      • 1970-01-01
      • 2018-02-03
      相关资源
      最近更新 更多