Nano Hash - криптовалюты, майнинг, программирование

highcharts преобразует данные json с помощью Date.UTC

Я пытаюсь отформатировать и загрузить данные нескольких серий через ajax с PHP в соответствии с этим пример:

Следующий код PHP,

<?php
$connection = pg_connect("host=localhost port=5432 dbname=pccs user=michael                   password=huskies1975") or die(" " . pg_last_error($connection));

$chart1 = pg_query($connection, "SELECT sample_date, a FROM monitor_nutrient WHERE   station_num_id = 201  ORDER BY sample_date ASC LIMIT 5");
$row_a = array();
$row_a['name'] = 'Temperature';
while ($ra = pg_fetch_array($chart1)) {
    $date = str_replace("-",",",$ra['sample_date']);
    $row_a['data'][] = array($date, $ra['a']);
}

$chart1 = pg_query($connection, "SELECT sample_date, b FROM monitor_nutrient WHERE     station_num_id = 201  ORDER BY sample_date ASC LIMIT 5");
$row_b = array();
$row_b['name'] = 'Salinity';
while ($rb = pg_fetch_array($chart1)) {
    $date = str_replace("-",",",$rb['sample_date']);
    $row_b['data'][] = array($date, $rb['b']);
}

$chart1 = pg_query($connection, "SELECT sample_date, c FROM monitor_nutrient WHERE station_num_id = 201  ORDER BY sample_date ASC LIMIT 5");
$row_c = array();
$row_c['name'] = 'Dissolved Oxygen';
while ($rc = pg_fetch_array($chart1)) {
    $date = str_replace("-",",",$rc['sample_date']);
    $row_c['data'][] = array($date, $rc['c']);
}

$result = array();
array_push($result, $row_a);
array_push($result, $row_b);
array_push($result, $row_c);

echo(json_encode($result, JSON_NUMERIC_CHECK));
//print json_encode($result, JSON_NUMERIC_CHECK);

pg_close($connection);
?>

производит этот действительный (JsonLint) вывод:

[
    {
        "name": "Temperature",
        "data": [
            [
                "2012,06,12",
                20.38
            ],
            [
                "2012,06,21",
                24.62
            ],
            [
                "2012,07,03",
                25.96
            ],
            [
                "2012,07,20",
                24.92
            ],
            [
                "2012,08,03",
                25.56
            ]
        ]
    },
    {
        "name": "Salinity",
        "data": [
            [
                "2012,06,12",
                31.49
            ],
            [
                "2012,06,21",
                31.47
            ],
            [
                "2012,07,03",
                31.11
            ],
            [
                "2012,07,20",
                30.75
            ],
            [
                "2012,08,03",
                30.94
            ]
        ]
    },
    {
        "name": "Dissolved Oxygen",
        "data": [
            [
                "2012,06,12",
                5.53
            ],
            [
                "2012,06,21",
                7.07
            ],
            [
                "2012,07,03",
                5.3
            ],
            [
                "2012,07,20",
                3.49
            ],
            [
                "2012,08,03",
                6.67
            ]
        ]
    }
]

Во-первых, подходит ли этот формат для серии Highcharts, во-вторых, как и где преобразовать дату в Date.UTC(), например, в JavaScript/PHP? и, наконец, следующий код даже близок к тому, что я хочу.

function chartParser(data) {

        $.each(data, function (key, value) {
            var series = {name: key, data: []};

            $.each(value, function (key, val) {
                if (key == 'name') {
                    series.name = val;
                }
                else {
                    $.each(val, function (key, val) {
                        options.series.push([val[0], val[1]]);

                    });
                }

            });
            var chart1 = new Highcharts.Chart(options);
        });

    }

Будем признательны за любую помощь и примеры. Я мучаю себя этим уже пару недель.

02.07.2013

Ответы:


1

Вы можете добиться этого на стороне клиента следующим образом:

 $.each(val, function (key, val) {
   options.series.push([new Date(val[0]).getTime(), val[1]]);
 });
03.07.2013
  • хорошо, большое спасибо. Мне трудно на каждом шагу, и каждый немного помогает. 03.07.2013
  • +1 за это решение ... У меня было много проблем с переводом даты в правильный формат. 18.04.2014
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..