0

I am making a line chart with Highcharts and everything was fine but the X-axis. It's not displaying the right data which I have get from mysql. This is my chart right now but it is not what i expected. X-Axis row auto change all of my data to 01:[my minutes]:[my mins], example: my data is:2015-05-12 08:23:40 it auto convert to 01:23:40. i don't know why

https://i.stack.imgur.com/lfoWK.png

I need a chart look like this but I don't know how to fix it, help me please.

https://i.stack.imgur.com/Vrn91.png

My codes are below:

<?php 

     $query = "select distinct idchip from datatable ";
     $result = mysql_query( $query );
     $rows = array();
     $count = 0;

     while( $row = mysql_fetch_array( $result ) ) {

         $table = array();

         $query2 = "select datetime,temperature from datatable where idchip=".$row['idchip'].' group by datetime ';
         $query3 = "select datetime from datatable where idchip=".$row['idchip'].' group by datetime ASC';
         $timeresult = mysql_query($query3);

            while($datatime  = mysql_fetch_array($timeresult))
            {
                $newtime .= $datatime['0'].',';


                $newcates .= "'".$datatime['0']."',";
            } 

            $total= explode(",", $newtime);
            array_pop($total);
            $count = 0; 

            $dataresult = mysql_query($query2);
            while($datarow = mysql_fetch_array($dataresult))
            {

                $data = '';
                //$datatimes = '';

                $datatimes .= $datarow['0'].',';

                //$stringtime .= $datatimes;


            /*  $timetotal = explode(",",$datatimes);

                array_pop($timetotal);
                echo count($total).' |'; */

                //echo count($timetotal).' |';
                //echo $timetotal[$count]." |";
                //$data .= "[moment('".$datarow['0']."').valueOf(),".(integer)$datarow['1']."],";
                $data .= "[moment('".$datarow['0']."').valueOf(),".(integer)$datarow['1']."],";
                $stringdata .= $data;

                }

        $newstring = $stringdata ;
        //$total = '';
        //$newtime = '';
        $stringdata = '';
        $stringtime = '';

        //$stringcates = '';
        //echo $newstring;


        $namedata = "{name:'Chip ".$row["idchip"]."',data:[$newstring],type: 'spline'},";
        $getall .= $namedata;

     }

     $serries = 'series: [ '.$getall.' ]';



?>

and this is my XAxis

xAxis: {

            type: 'datetime',
            datetime:[<?=$newcates?>],
            minTickInterval: moment.duration(1, 'month').asMinutes()
        },

this is my databaselooks like:

                id  idchip  datetime       signal temperature
Edit    Delete  1   5   2015-05-12 08:24:40     +   29
Edit    Delete  12  5   2015-05-12 08:23:40     +   031
Edit    Delete  3   6   2015-05-12 08:27:55     +   29
Edit    Delete  4   7   2015-05-12 08:26:01     +   50
Edit    Delete  5   5   2015-05-12 08:25:12     +   28
Edit    Delete  6   6   2015-05-12 08:28:32     +   29
Edit    Delete  7   6   2015-05-12 08:24:42     +   30
Edit    Delete  8   5   2015-05-12 08:27:58     +   29
Edit    Delete  9   5   2015-05-12 08:26:02     +   31
Edit    Delete  10  5   2015-05-12 08:26:13     +   29
Edit    Delete  11  5   2015-05-12 08:26:53     +   32
duong khang
  • 342
  • 1
  • 4
  • 19
  • Look at the useUTC property: http://api.highcharts.com/highcharts#global.useUTC – jlbriggs May 13 '15 at 12:43
  • @jlbriggs added global:{useUTC:false} but nothing change :( – duong khang May 13 '15 at 12:47
  • Could you attach generated data for `series` ? I mean what is generated by your PHP in Javascript for chart series. – Paweł Fus May 13 '15 at 13:02
  • @PawełFus this is serires generated from my database: series: [ {name:'Chip 5',data:[[moment('2015-05-12 08:23:40').valueOf(),31],[moment('2015-05-12 08:24:40').valueOf(),29],[moment('2015-05-12 08:25:12').valueOf(),28],[moment('2015-05-12 08:26:02').valueOf(),31],[moment('2015-05-12 08:26:13').valueOf(),29],[moment('2015-05-12 08:26:53').valueOf(),32], ] – duong khang May 14 '15 at 01:33
  • @PawełFus help me please :(. http://stackoverflow.com/questions/30233041/highcharts-add-point-to-line-chart-with-json – duong khang May 14 '15 at 08:49

1 Answers1

0

Problem solved, you just need to add this code and everything works perfectly.

$(function() {
    Highcharts.setOptions({
         global: { 
        useUTC: false
    }
    });
});
duong khang
  • 342
  • 1
  • 4
  • 19