Как использовать даты по оси X с API Google Chart?

37
задан Smi 6 June 2012 в 07:28
поделиться

3 ответа

ОБНОВЛЕНИЕ Теперь это поддерживается непосредственно в API диаграмм с использованием функции «аннотированных диаграмм» расширенных графиков - https://developers.google.com/chart/interactive/docs/gallery/annotationchart

Я сделал это на моей диаграмме ReHash Database Statistics (хотя даты оказались равномерно распределенными, так что это точно не демонстрирует, что он делает это).

Во-первых, вы хотите получить ваш общий период времени , который будет аналогичен общей ширине вашего графика. Для этого мы вычитаем самую раннюю дату из самой поздней. Я предпочитаю использовать временные метки эпохи Unix, поскольку они являются целыми числами и их легко сравнивать таким образом, но вы можете легко вычислить количество секунд и т.д.

Теперь переберите свои данные в цикле. Для каждой даты нам нужен процентиль в общем периоде, когда дата отсчитывается от начала (т.е. самая ранняя дата - 0, самая поздняя - 100). Для каждой даты вы сначала хотите вычислить расстояние от текущей даты от самой ранней даты в наборе данных. По сути, «насколько мы далеки от старта». Итак, вычтите самую раннюю дату из текущей даты. Затем, чтобы найти процентиль, мы делим расстояние текущей даты на общий период времени , а затем умножаем на 100 и обрезаем или округляем любой десятичный знак, чтобы получить наш интеграл x -координата .

И это так просто! Ваши значения x будут находиться в диапазоне от 0 (левая сторона диаграммы) до 100 (правая сторона), и каждая точка данных будет находиться на расстоянии от начала, соответствующем ее истинному временному расстоянию.

Если у вас есть какие-либо вопросы, смело задавайте! При желании могу опубликовать псевдокод или PHP.

Ваши значения x будут находиться в диапазоне от 0 (левая сторона диаграммы) до 100 (правая сторона), и каждая точка данных будет находиться на расстоянии от начала, соответствующем ее истинному временному расстоянию.

Если у вас есть какие-либо вопросы, смело задавайте! При желании могу опубликовать псевдокод или PHP.

Ваши значения x будут находиться в диапазоне от 0 (левая сторона диаграммы) до 100 (правая сторона), и каждая точка данных будет находиться на расстоянии от начала, соответствующем ее истинному временному расстоянию.

Если у вас есть какие-либо вопросы, смело задавайте! При желании могу опубликовать псевдокод или PHP.

20
ответ дан 27 November 2019 в 04:59
поделиться

This can be done with Google charts quite easily, but your application must calculate the labels

The chxl chart x label parameter is the one you need. The following example labels a y-axis with numbers in 50 steps, and the bottom with dates

chxl=0:|0|50|100|150|200|250|300|350|400|450|500|1:|16/01/2009|26/01/2009|6/02/2009
1
ответ дан 27 November 2019 в 04:59
поделиться

Похоже, теперь вы можете сделать это с помощью расширенных графиков:

http://code.google.com/apis/visualization/documentation/gallery/annotatedtimeline.html

8
ответ дан 27 November 2019 в 04:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: