js读取json并将其加载到数组中

问题描述 投票:0回答:0

从 php 中的一个简单 Web 服务中,我生成一个 json,我想将其传递到另一个页面以加载数组。生成的json如下:

[{"x":1686736391,"y":19.06},{"x":1686746674,"y":19.06},{"x":1686767695,"y":19.68}]

其中“x”是 mysql 日期的 unix_timestamp,y 是整数值

在第二页上,我想使用canvasjs创建一个图表,然后运行以下代码:

<!DOCTYPE HTML>
<html>
    <head>  
        <script src="https://canvasjs.com/assets/script/canvasjs.min.js"></script>
        <script src="https://canvasjs.com/assets/script/jquery-1.11.1.min.js"></script>
        <script>
            window.onload = function () {

                var dataPoints = [];

                var chart = new CanvasJS.Chart("chartContainer", {
                    animationEnabled: true,
                    title:{
                        text: "title"
                    },
                    axisY: {
                        title: "values",
                        titleFontSize: 24,
                        prefix: "$"
                    },
                    data: [{
                        type: "line",
                        yValueFormatString: "$#,##0.00",
                        dataPoints: dataPoints
                    }]
                });

                function addData(data) {
                    for (var i = 0; i < data.length; i++) {
                        dataPoints.push({
                            x: new Date(data[i][0]),
                            y: data[i][1]
                        });
                    }
                    console.log(dataPoints);
                    chart.render();
                }


                $.getJSON("https://mywebsitesite.com/webservice.php?id=1", addData);
            }
        </script>
    </head>

    <body>
        <div id="chartContainer" style="height: 300px; width: 100%;"></div>
    </body>
</html>

但是 console.log(dataPoints) 结果给了我 x 的无效数据和 y 的未定义数据:

我做错了什么? 提前谢谢

javascript php web-services canvasjs
© www.soinside.com 2019 - 2024. All rights reserved.