如何解決series內data為null或者0所引起的圖表線條斷層問題


series內有data為null或者為0時所出現圖表線條斷層問題,導致圖表體現不連貫。series數據如下

series: [{
           data: [29.9, 71.5, 106.4, 129.2, null, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
       }]

效果是這樣的:

data為null時出現的斷層效果

 

如果數據為0

series: [{
           data: [29.9, 71.5, 106.4, 129.2, 0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
       }]

效果會這樣,會連接到Y軸的0點上

data為0時出現斷層

 

這樣給人的感覺就是在May刻度上值是為0,其實真正的含義是想讓沒有數據的刻度上不顯示數據點,但是保持前后連線平滑。

為了解決以上兩個所帶來的斷層問題,特別推出了connectNulls屬性,這個屬性就是當數據為null的時候,會自動平滑連接前后兩點之間的線條,使圖表更加美觀,具體完整代碼見下所示:

 

$(function () {
    $('#container').highcharts({
        chart:{
            type:'area'
        },
        title: {
            text: 'highcharts連接線條演示'
        },
        xAxis: {
            categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
        },
        credits: {
         text: 'highcharts的博客',
         href: 'http://www.stepday.com/myblog/?highcharts'
        },
        plotOptions: {
            series: {
                connectNulls: true //連接數據為null的前后點
            }
        },

        series: [{
            data: [29.9, 71.5, 106.4, 129.2, null, 176.0, 135.6, 148.5, 216.4, 194.1, null, 54.4]
        }]

    });
});

最終完美效果圖如下所示:

 

解決圖表斷層的完美效果

 

(收集於網絡)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM