Ответить на тему  [ Сообщений: 3 ] 
Модуль Charts. Проблема с формированием '#data' => array 
Автор Сообщение
Прохожий

Зарегистрирован: 29 май 2016, 06:55
Сообщений: 12
Откуда: Петропавловск-Камчатский
Пол: мужской
Репутация: 0
Добавить пункт репутацииВычесть пункт репутации
Сообщение Модуль Charts. Проблема с формированием '#data' => array
Здравствуйте!
Из БД получаю данные путем:
Код:
$query = db_query("SELECT fo, count(athlete_id) as athlete FROM rating_dvfo_athlete
                  GROUP BY fo
                  HAVING fo IS NOT NULL AND fo != ''
                  ORDER BY athlete DESC");

После чего обрабатываю их в цикле:
Код:
while ($result = $query->fetchAssoc()) {
         $fo[] = $result['fo'];
         $athlete[] = $result['athlete'];
   }

Затем изменяю тип данных в массивах, это важно, убедился на других графиках:
Код:
settype($fo[0], 'string');
   settype($athlete[0], 'integer');

Далее формирую график:
Код:
$chart = array(
    '#type' => 'chart',
    '#title' => t('Колличество спортсменов по ФО'),
    '#chart_type' => 'pie',
    '#chart_library' => 'google', // Allowed values: 'google' or 'highcharts'
    '#legend_position' => 'right',
    '#data_labels' => TRUE,
    '#tooltips' => FALSE,
   );
   $chart['pie_data'] = array(
    '#type' => 'chart_data',
    '#title' => t('Федеральные округа'),
// Две проблемные строки
    '#labels' => $fo,
    '#data' => $athlete,
   );

   $example['chart'] = $chart;
   $fo = drupal_render($example);

Но график не отображает заданные данные. Почему так получается? Может неправильно выбираю данные из БД?
К слову. Если изменить строку '#data' => $athlete на
Код:
'#data' => array(0,1,2,3,4,5,6,7,8)
то график отображается корректно.


01 фев 2017, 03:52
Профиль Отправить личное сообщение WWW
Модератор
Аватар пользователя

Зарегистрирован: 09 мар 2010, 00:53
Сообщений: 4073
Репутация: 2904
Добавить пункт репутацииВычесть пункт репутации
Сообщение Re: Модуль Charts. Проблема с формированием '#data' => array
В строках
Код:
settype($fo[0], 'string');
   settype($athlete[0], 'integer');
изменяете тип для первых элементов. А для остальных не надо?
Если надо, то можно эти две строки вставить в цикл while, который имеется в коде выше.

_________________
Не забывайте отдыхать!
www.jscan.ru - ежедневно новые японские сканворды и судоку различной сложности!


01 фев 2017, 12:12
Профиль Отправить личное сообщение WWW
Прохожий

Зарегистрирован: 29 май 2016, 06:55
Сообщений: 12
Откуда: Петропавловск-Камчатский
Пол: мужской
Репутация: 0
Добавить пункт репутацииВычесть пункт репутации
Сообщение Re: Модуль Charts. Проблема с формированием '#data' => array
Помогло, благодарю!


02 фев 2017, 09:31
Профиль Отправить личное сообщение WWW
Показать сообщения за:  Сортировать по:  
Ответить на тему   [ Сообщений: 3 ] 
   Похожие темы   Автор   Ответов   Просмотров   Последнее сообщение 
Нет новых непрочитанных сообщений в этой теме Проблема с блоком содержащим модуль

в форуме CSS И ВЕРСТКА

cerber72

3

764

04 дек 2013, 05:29

cerber72 Перейти к последнему сообщению

Нет новых непрочитанных сообщений в этой теме Представление данных формы (webform+data+web_mysql_views)

в форуме Drupal 7

Gabrielle

1

1435

21 фев 2014, 16:13

Gabrielle Перейти к последнему сообщению

Нет новых непрочитанных сообщений в этой теме Работа с массивом (array)

в форуме PHP , БАЗЫ ДАННЫХ, ЛОКАЛЬНЫЙ СЕРВЕР

xlife

2

843

16 авг 2012, 14:00

xlife Перейти к последнему сообщению

Нет новых непрочитанных сообщений в этой теме return array(....) в php файле

в форуме PHP , БАЗЫ ДАННЫХ, ЛОКАЛЬНЫЙ СЕРВЕР

Ilya

1

859

05 апр 2014, 13:22

Karatel Перейти к последнему сообщению

Нет новых непрочитанных сообщений в этой теме помогите к формированием каталога

в форуме Drupal 6

ortigr

3

728

01 ноя 2011, 00:49

ortigr Перейти к последнему сообщению


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
 cron