<html>
    <head>
        <meta charset="utf-8">
        <script src="lib/esl.js"></script>
        <script src="lib/config.js"></script>
    </head>
    <body>
        <style>
            html, body, #main {
                width: 100%;
                height: 100%;
            }
            body {
                margin: 0;
            }
        </style>
        <div id="main"></div>
        <script>

            require([
                'echarts'
                // 'echarts/chart/line',
                // 'echarts/component/title',
                // 'echarts/component/grid',
                // 'echarts/component/axis',
                // 'echarts/component/dataZoom',
                // 'echarts/component/tooltip',
                // 'echarts/component/markPoint',
                // 'echarts/component/markLine'
            ], function (echarts) {

                var chart = echarts.init(document.getElementById('main'));

                var option = {
                    "title": {
                        "text": "Data shadow when there are EMPTY VALUES."
                    },
                    "tooltip": {
                        "trigger": "axis"
                    },
                    "grid": {
                        "left": "3%",
                        "right": "4%",
                        "bottom": "55%",
                        "containLabel": true
                    },
                    "dataZoom": [
                        {
                            "type": "slider",
                            // "start": 90,
                            // "end":100,
                            "bottom": 20,
                            "height": 200
                        }
                    ],
                    "xAxis": [
                        {
                            "type": "time",
                            "boundaryGap": false,
                            // "min": 1451577600000,
                            // "max": 1476201600000
                        }
                    ],
                    "yAxis": [
                        {
                            "type": "value"
                        }
                    ],
                    "series": [
                        {
                            "type": "line",
                            "connectNulls": false,
                            "areaStyle": {
                                "normal": {
                                    "color": "#E77271"
                                }
                            },
                            "lineStyle": {
                                "normal": {
                                    "color": "#E77271"
                                }
                            },
                            "data": [
                                [
                                    "2016-09-20T16:00:00.000Z",
                                    null
                                ],
                                [
                                    "2016-09-21T16:00:00.000Z",
                                    13
                                ],
                                [
                                    "2016-09-22T16:00:00.000Z",
                                    3
                                ],
                                [
                                    "2016-09-23T16:00:00.000Z",
                                    null
                                ],
                                [
                                    "2016-09-24T16:00:00.000Z",
                                    null
                                ],
                                [
                                    "2016-09-25T16:00:00.000Z",
                                    null
                                ],
                                [
                                    "2016-09-26T16:00:00.000Z",
                                    null
                                ],
                                [
                                    "2016-09-27T16:00:00.000Z",
                                    61
                                ],
                                [
                                    "2016-09-28T16:00:00.000Z",
                                    28
                                ],
                                [
                                    "2016-09-29T16:00:00.000Z",
                                    21
                                ],
                                [
                                    "2016-09-30T16:00:00.000Z",
                                    null
                                ],
                                [
                                    "2016-10-01T16:00:00.000Z",
                                    null
                                ],
                                [
                                    "2016-10-05T16:00:00.000Z",
                                    null
                                ],
                                [
                                    "2016-10-06T16:00:00.000Z",
                                    null
                                ],
                                [
                                    "2016-10-07T16:00:00.000Z",
                                    null
                                ],
                                [
                                    "2016-10-08T16:00:00.000Z",
                                    NaN
                                ],
                                [
                                    "2016-10-09T16:00:00.000Z",
                                    35
                                ],
                                [
                                    "2016-10-10T16:00:00.000Z",
                                    46
                                ],
                                [
                                    "2016-10-11T16:00:00.000Z",
                                    8
                                ],
                                [
                                    "2016-10-12T16:00:00.000Z",
                                    '-'
                                ]
                            ]
                        }
                    ]
                };

                chart.setOption(option);
            })

        </script>
    </body>
</html>