2014-01-06 71 views
1

即時試圖填充我的xaxis只使用數組中存儲的數組$日期[]flot chart填充xaxis與陣列

這是我的編碼;

 <?php 
// Main query to pull data from 'tests' table 
    $sql = "SELECT UNIX_TIMESTAMP(`date`)*1000 AS unixDate,`date`, `test1`, `test2`, `test3`, `test4`, `test5`, `test6`, `test7`, `test8`, `test9`, `test10`, `test11`, `test12`, `test13`, `test14` FROM `tests` WHERE member_id = '1' ORDER by `date` ASC"; 
    $result = mysql_query($sql) or die ("no query"); 

// Dataset#1 
while($row = mysql_fetch_assoc($result)) { 
    $dataset1[] = array($row['unixDate'], sprintf("%.3f", $row['test1'])); 
    $date[] = array($row['unixDate']); 
    } 
?> 
<div id="chart1Canvas" style="width:510px;height:200px;"> 
<div id="chart1" style="width:500px;height:200px;"></div></div> 
<script type="text/javascript"> 
    //START CHART#1 
    var dateArray = [ <?php echo json_encode($date); ?> ]; 
    var chart1Options = { 
     xaxis: {show: true, mode: "time", timeformat: "%y-%m-%d", ticks: dateArray}, 
     yaxis: {show: true, min: 1.000, max: 1.050, tickDecimals: 3 }, 
     lines: { 
      show: true, 
      fill: true, 
      fillColor: { colors: [{ opacity: 0.2 }, { opacity: 0.2}] } 
     }, 
     points: { show: true, radius: 1 }, 
     grid: { 
      show: true, 
      color: '#fff', 
      backgroundColor: false, 
      borderWidth: 0, 
      hoverable: true, 
      clickable: true } 
    }; 

    function getTooltip(label, x, y) { 
    return "Your sales for " + x + " was $" + y; } 

    var dataset1 = { data: <?php echo json_encode($dataset1); ?>, color: 'white'}; 

    $.plot($("#chart1"), [ dataset1 ], chart1Options); 
    //END CHART#1 
</script> 

當我運行此我的整個x軸自敗,我以爲我把它分配給我的x軸的「刻度」選項前JSON_encode日期[]數組?

有人可以檢查我在這裏做錯了嗎?

謝謝。

編輯:改變了一些東西,現在它做了一些事情,但仍然沒有網格和標籤爲xaxis?

檢查鏈接:http://www.myreeftests.com/graphs2.php

回答

2

dateArray看起來是這樣的:

var dateArray = [ [["1367704800000"],["1367791200000"], ... 

但它看起來像這樣:

var dateArray = [1367704800000,1367791200000, ... 

所以除去在JavaScript和格式外[ ]時間戳記作爲longint而不是字符串數組(不知道如何在php中做到這一點)。

查看documentation瞭解更多信息。

+1

正確的PHP將在循環做'$日期[] = INTVAL($行[ 'unixDate']);' – Mark

+0

我改變環路陣列INTVAL($行[ 'unixDate']建議, 並刪除了[]數組在javascript中(var dateArray = <?php echo json_encode($ date);?>;),現在我沒有得到xaxis顯示。 http://www.myreeftests.com/graphs2.php –

+0

當前代碼: [鏈接] http://pastebin.com/8tEptQQk –

0

好吧,隨着亂搞我設法讓它顯示正確的滴答使用數組,最後一個問題是格式化蜱平均空間;

[鏈接] http://www.myreeftests.com/graphs2.php

+0

是否只需要將蜱均勻分佈或數據點?如果兩者都有,那麼你需要類別(參見[示例](http://www.flotcharts.org/flot/examples/categories/index.html))。 – Raidri

+0

btw:你的酸度值爲零。這些可能不是真正的價值。也許省略它們或將它們改爲'null'。 – Raidri

+0

raidri,謝謝你會檢查出來,是的,一些酸度值會返回0的結果,應該是一個問題,應該嗎?或者我可以處理這個不同? –