如何在dygraphs中隐藏数据值?指定单系列起始日期的方法
解决dygraphs中晚起始折线的异常显示问题
有两个实用方案可以解决你的问题:
使用NaN作为缺失值替代空或0:dygraphs原生会忽略NaN值,不会将其与后续有效数据连线。只需要把目标折线早于起始日期的所有数据点设为NaN,这条折线就只会从第一个有效数据点开始绘制,不会出现从0或空值跳上来的异常线条。
自定义
visibilityCallback控制显示:如果需要更灵活的显示逻辑,可以通过这个配置项针对特定系列过滤点。比如指定目标系列在早于某个日期时不渲染任何点,示例代码如下:
new Dygraph( document.getElementById("graph"), yourData, { visibilityCallback: function(seriesName, x, y, seriesIndex, pointIndex) { // 替换成你的目标系列名称和起始日期 const targetSeries = "晚启动的系列"; const startDate = new Date("2024-03-01").getTime(); if (seriesName === targetSeries && x < startDate) { return false; // 不显示该点 } return true; // 其他情况正常显示 } } );
优先推荐第一种方案,因为NaN是dygraphs默认支持的缺失数据标识,实现起来最简单直接,不需要额外的回调逻辑。
内容的提问来源于stack exchange,提问作者Doug Wolfgram
相关产品推荐
相关产品推荐

