javascript - 使用 Flot、JSON 和 MySQL 的 X 轴日期格式

标签 javascript php mysql json

我通常会用头撞墙,直到我可以利用互联网的集体智慧解决问题,但这次我被难住了。我希望有人能指出我在一夜无果的努力中犯下的愚蠢错误。

我正在尝试使用 Flotr 使用 MySQL 数据库中的数据生成图表。我已经很清楚了,但我似乎无法格式化 x 轴以显示实时时间。我可以毫无问题地获得 13 位 UNIX 时间 * 1000,但是当我尝试将模式:“时间”参数添加到我的 $.plot 语句时,我得到的只是一个空白图。我浏览器中的源代码看起来与我从 Flotr 示例中获得的源代码大致相同。所以这是我的 PHP 数据库查询:

        # issue statement
    $stmt = "SELECT T41,(UNIX_TIMESTAMP(tstamp)*1000) AS tstamp "
        . " FROM tempLogExp ORDER BY tstamp DESC LIMIT 1440";
    $sth = $dbh->query ($stmt);

    while ($row = $sth->fetch (PDO::FETCH_BOTH))
    {
        $dServer[]=array(floatval($row['tstamp']),floatval($row['T41']));
    }
    $dbh = NULL;  # close connection
    ?>

我的 Javascript 看起来像这样:

$(function() {

        var d2 = <?php echo json_encode($dServer); ?>;

        $.plot("#placeholder", [d2], {
            xaxis: {
                mode: "time"
            }
        });

        // Add the Flot version string to the footer

        $("#footer").prepend("Flot " + $.plot.version + " &ndash; ");
    });

注释掉 'mode: "time"' 行将生成一个图形,但该行未被注释,如上所示,我只是得到一个杂色矩形。

我正在尝试绘制来自某些数据记录器的 24 小时数据的图表。如果能帮助我克服这个障碍,我将不胜感激。

谢谢,

弗兰克

最佳答案

我最终阅读了 Flot 文档,发现我忽略了“模式:“时间””选项工作所需的插件。包括“jquery.flot.time.js”解决了我的问题。

关于javascript - 使用 Flot、JSON 和 MySQL 的 X 轴日期格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20121714/

相关文章:

javascript - 如何处理 React 的 onChange 事件中的小数值输入?

javascript - 获取没有子 child 的 HTML

php - 使用php删除图像背景并保存透明png

php - 如何查看是否安装了Suhosin?

MYSQL MAX和Min查询

javascript - 如何防止在更改时使用 jQuery 调用多个事件

javascript - 我该如何使用 ||类中的运算符设置默认值?

javascript - Wordpress:替换源(域名)链接

php - 动态获取列中每个唯一值的计数

mysql - 一个表中的多个计数无意中对行中的列求和