jQuery Flot-力轴值
我正在尝试使用jQuery flot显示网站点击率。 问题是:任何一天都没有点击率。 示例(一周): 星期一至二 星期二-12 星期三-0 ..... 星期日-0 我使用以下语句从数据库中获取数据: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
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;
});