NVD3将空值显示为零

时间:2018-07-19 15:10:26

标签: nvd3.js

我用nvd3创建了一个散点图。对于大多数点,我的y值都为null。对于我的某些图形(奇数,因为它们都使用相同的代码),空值显示为零(x轴上的点线,其中的值不是数字)。

我如何让nvd3在y值为空的点上什么也不显示?

请注意以下代码:我最近尝试了yAxis,包括“ if(d == null)...”。似乎没有什么可以消除零为零的空值。抢先回答“为什么将空值和“真实”数据一起传递”:这是因为它可以轻松在x轴上具有正确的时间范围(否则nvd3只是缩放x轴以保持点数,而我真正想要在整整24小时内都没什么。

nv.addGraph(function() {                                                                                                                                                                                        
var day_data = {{ day_data|safe }};                                                                                                                                                                                                                                                                                                                                                                                 
var day_chart = nv.models.scatterChart()                                                                                                                                                                      
.showLegend(false)                                                                                                                                                                                        
.showDistY(true)                                                                                                                                                                                          
.color(d3.scale.category10().range());                                                                                                                                                                                                                                                                                                                                                             
day_chart.xAxis                                                                                                                                                                                           
.showMaxMin(false)                                                                                                                                                                                        
.ticks({{ plot_num_xticks }})                                                                                                                                                                             
.tickFormat(function (d) {                                                                                                                                                                                    
return d3.time.format.utc("%m/%d %H:%M")(new Date(d));                                                                                                                                                
});                                                                                                                                                                                                                                                                                                                                                                                                                 
day_chart.yAxis                                                                                                                                                                                           
.axisLabel('speed')                                                                                                                                                                                       
.tickFormat(function (d) {                                                                                                                                                                                    
if (d == null) {
                return null;                                                                                                                                                                                          
}
            return d.toFixed(2);                                                                                                                                                                                  
});                                                                                                                                                                                                                                                                                                                                                                                                               
d3.select('#day_plot')                                                                                                                                                                                        
.datum(day_data)                                                                                                                                                                                          
.call(day_chart);                                                                                                                                                                                                                                                                                                                                                                                               
nv.utils.windowResize(day_chart.update);                                                                                                                                                                                                                                                                                                                                                                            
return day_chart;                                                                                                                                                                                       
});

0 个答案:

没有答案