2

以下は、ハイチャートの私の簡単なグラフです。すべて問題ないように見えますが、現在の唯一の問題は、2012-05-26 01:00:00、200、および 2012-05-26 02:00:00,300 の 2 つだけです。y 軸は正常に表示されます。しかし、x 軸では、17:00 に始まり 18:00 に終わる時間が表示され、日付さえ表示されません。何が問題なのですか?

<?php
    define('DB_HOST', '*******');
    define('DB_USER', 'user1');
    define('DB_PASSWORD', 'test1');
    define('DB_DATABASE', 'db1');

 $dbcnx = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
 mysql_select_db('db1');

$sql = "select unix_timestamp(datetime1) as datetime1, value1 from data";
$result = mysql_query($sql,$dbcnx);
$data = array();
while ($row = mysql_fetch_array($result)) {
   //extract $row;
   //$datetime1 = $row['dateTime1']*1000;
   $datetime = $row['datetime1']*1000; 
   //echo $datetime;
   echo $row['value1'];
   $val  = $row['value1'];
   // convert from Unix timestamp to JavaScript time
   $data[] = "[$datetime, $val]";
}
?>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>Highcharts Example</title>

        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
        <script type="text/javascript">
$(function () {
    $(document).ready(function() {
      //alert("TS");
      var chart = new Highcharts.Chart({
      chart: {
         renderTo: 'container',
                type: 'line',
                marginRight: 130,
                marginBottom: 25

      },

      series: 
        [{
         data: [<?php echo join($data, ',') ?>]
      }],
      xAxis: { type: 'datetime'}

   });
  });

});
        </script>
    </head>
    <body>
<script src="js/highcharts.js"></script>
<script src="js/modules/exporting.js"></script>

<div id="container" style="min-width: 400px; height: 400px; margin: 0 auto"></div>

    </body>
</html>
4

1 に答える 1

3

どのデータがハイチャートに渡されているのかわかりません。その音では、2 つのデータ ポイントしか渡していません。クエリが必要なデータをプルしていることを確認しましたか? もしそうなら、ハイチャートにあるはずのデータをここに投稿できますか? また、ウェブページのビューソースで生成されたハイチャートをここに投稿できますか?

xaxis ラベルに関する限り、それらは datetime 形式であるため、グラフは最適と思われる方法でそれらをレンダリングします。レンダリング方法が気に入らない場合は、dateTimeLabelFormatsを使用してグラフの日時形式を制御できます。tickIntervalを使用して、表示される日付の間隔を制御することもできます。

于 2012-05-27T03:40:56.967 に答える