jQuery Flot-力轴值

jQuery Flot-力轴值,jquery,mysql,flot,Jquery,Mysql,Flot,我正在尝试使用jQuery flot显示网站点击率。 问题是:任何一天都没有点击率。 示例(一周): 星期一至二 星期二-12 星期三-0 ..... 星期日-0 我使用以下语句从数据库中获取数据: var pageviews = [ <?php $query = "SELECT DAY(`h_date`) AS day, COUNT(*) as zugriffe FROM

我正在尝试使用jQuery flot显示网站点击率。 问题是:任何一天都没有点击率。 示例(一周): 星期一至二 星期二-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'];
                }
            ?>

        ];
我如何填充命中率为0的天数缺少的轴值


提前感谢

您只需在将数据提交给flot之前修复数据即可

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

// 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;
});
//这是未排序且缺失的第12、13、18、19、20天
var pageviews=[[14,0]、[11133]、[16,0]、[17,89]、[21,1];
//以防排序(不确定这是否适用于您的数据)
//按X值排序
页面浏览量.排序(函数(a,b){
返回a[0]-b[0];
});
//一个快速功能,用于扫描和填充缺少的x值
$.map(页面视图、功能(obj){
var rV=[];
if(this.lastVal){
var x=obj[0];
var lastX=this.lastVal[0];
对于(变量i=lastX+1;i
首先创建天数数组,然后填入值(从数据库或零)。从数据库中获取样本输出:day zugriffe 13 93 14 133 15 0 16 116 17 86 19 0
// 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;
});