jQuery Flot - 力轴值

标签 jquery mysql flot

我正在尝试使用 jQuery flot 显示网站点击量。 问题是:任何一天都没有点击率。 示例(一周): 星期一 - 2 星期二 - 12 星期三 - 0 …… 周日 - 0

我使用以下语句从数据库中获取数据:

var pageviews = [
            <?php                               
                $query = "SELECT DAY(`h_date`) AS day, COUNT(*) as zugriffe FROM hits WHERE h_server = $serverID AND WEEK(`h_date`,3) = '$selectKW' GROUP BY day";

                $mydb->query($query);
                $wCount = 0;
                while ($row = $mydb->fetchRow()){
                    $wCount++;
                    echo '['.$row['day'].','.$row['zugriffe'].'],';
                    $tag = $row['day'];
                }
            ?>

        ];

输出数据库示例:

day zugriffe
13  0
14  133
15  114
16  0
17  86
19  1

如何填充点击数为 0 的日期缺失的轴值?

提前致谢

最佳答案

您可以在将数据投入 float 之前修复数据。

例如,给出如下数据库输出:

// this is unsorted and missing days 12, 13, 18, 19, 20
var pageviews = [[14,0],[11,133],[16,0],[17,89],[21,1]];

// sort it just in case (not sure if this is applicable to your data)
// sorting on X value
pageviews.sort(function(a,b){
    return a[0]-b[0];
});

// a quick function to scan and fill in missing x values
$.map(pageviews, function(obj){
    var rV = [];
    if (this.lastVal){
        var x = obj[0];
        var lastX = this.lastVal[0];
        for (var i = lastX + 1; i < x; i++){
            rV.push([i,0]);
        }
        rV.push(obj);
    } else {        
        rV = [obj];
    }
    this.lastVal = obj;
    return rV;
});

关于jQuery Flot - 力轴值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26866973/

相关文章:

JavaScript 小数增量?

mysql - contains 和 contained in sequelize Where 子句有什么用?

MySQL 只从结果中获取数字

javascript - 重新绘制后浮点图不会更新

javascript - 在单个浮点图上显示点数据集和线数据集?

javascript - 可视化能源效率水平

javascript - 如何从当前类中删除类并将其添加到下一个类

jquery - 将一行图像调整为浏览器宽度

Mysql WHERE 不适用于具有多个联接的表

javascript - 如何让这个按钮在多个 div 中滚动?