Дата MySQL показана как год в Highstock - PullRequest
2 голосов
/ 02 ноября 2011

У меня есть график Хайстока, и я получил данные из базы данных MySQL, как показано в в этом примере .

Поле даты является отметкой времени MySQL.Когда я размещаю курсор над значением, вместо (День, месяц, год) отображается только год.

Есть идеи, почему отображается только год?

Яс использованием инфраструктуры Codeigniter и кода на стороне сервера выглядит следующим образом:

        $sql = "SELECT UNIX_TIMESTAMP(sop_date)*1000 AS sop_date, sop_price
                FROM share
                INNER JOIN share_operation
                    ON share_operation.sop_idsha = share.sha_id
                INNER JOIN share_operation_type
                    ON share_operation_type.sot_id = share_operation.sop_idsot";

        $params = array($sha_idcon, $sha_idwal);
        $query = $this->db->query($sql, $params);

        if ($query->num_rows() > 0) {
            $data = array();

            foreach ($query->result() as $i => $row) {
                $data[] = "[$row->sop_date, $row->sop_price]";
            }

            return ($data);
        }

На стороне клиента:

$(document).ready(function() {

      Highcharts.setOptions({
         lang: {
             months: ['Gener', 'Febrer', 'Març', 'Abril', 'Maig', 'Juny',
                    'Juliol', 'Agost', 'Setembre', 'Octubre', 'Novembre', 'Desembre'],
             weekdays: ['Dilluns', 'Dimarts', 'Dimecres', 'Dijous', 'Divendres', 'Dissabte', 'Diumenge'],
             rangeSelectorFrom: 'Des de',
             rangeSelectorTo: 'Fins'
         }
      });


      window.chart = new Highcharts.StockChart({
         chart : {
            renderTo : 'graphic'
         },

         rangeSelector : {
            selected : 1
         },

         title : {
            text : 'Xisco'
         },

         xAxis : {
            maxZoom : 14 * 24 * 3600000 // fourteen days
         },

         series : [{
            name : 'Xisco',                       
            data :  [<?php echo join($data, ',') ?>],                           
            tooltip: {
               yDecimals: 2
            }
         }]
      });
          });

1 Ответ

0 голосов
/ 04 ноября 2011

Применение форматирования может решить эту проблему.

tooltip: {
   formatter: function() {
      return Highcharts.dateFormat('%e. %b %Y', this.x);
   }
}

Более подробная информация содержится в документации . Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...