Logrus

 
<<< Back

Телеграмм. pChart

отправка графиков в телеграмм

$p = 'Data.absoluteHumidity'; //объект.свойство
$title = ''; //заголовок (без_пробелов), по умолчанию объект.свойство
$unit = 'г/м3'; //единицы измерения, по умолчанию °C
$gcolor = 'brown'; //цвет графика (red, brown, blue, green, orange), бесцветный по умолчанию
$bg = 'light'; //фон графика (может быть light, dark), по умолчанию dark
//$gtype = 'curve'; //тип графика (может быть: curve, bar, line - ступенчатый, столбцы, плавная линия)
$fil01 = '1'; //сглаживание, по умолчанию = 0 (отсутствует)
$type = '14d'; //Период (8h = 8 часов, 8d = 8 дней, 8m = 8 месяцев)

$this->sendAction($chat_id, 'upload_photo');
$url = BASE_URL . '/pChart/?p='.$p.'&title='.$title.'&unit='.$unit.'&gcolor='.$gcolor.'&bg='.$bg.'&fil01='.$fil01.'&type='.$type;
$path = DOC_ROOT . '/cms/cached/pChart.png';
file_put_contents($path, file_get_contents($url));
$this->sendImageToUser($chat_id, $path);
/*
       Документация по построению графиков: http://wiki.pchart.net/
       Параметры в адресной строке:
        &p=sensor1.temp - Объект.свойство
        &op=log - лог исходных данных
        &op=debug - лог данных сформированных для построения графика
        &op=value - последнее значение свойства объекта
        &op=timed - лог исходных данных в формате JSON
        &op=json - лог данных графика в формате JSON
        &px=6 - расстояние между точками графика
        &approx=avg - аппроксимация (sum - по сумме, max - по максимуму, count - по разнице между макимальним и минимальным значением в периоде)
        &fil01=0 - сглаживание, по умолчанию = 0 (отсутствует)
        &gcolor=brown - цвет графика (brown, blue, green, orange), бесцветный по умолчанию
        &bg=light - фон графика (может быть light, dark), по умолчанию dark
        &title=Title - заголовок
        &scale=zero - показывать ось нулевого значения
        &gtype=curve - тип графика (может быть: curve, bar, line -- плавная линия, столбцы, ступенчатый)
        &type=8h - Период (8h = 8 часов, 8d = 8 дней, 8m = 8 месяцев)
        &start=2014/09/25 - дата с которой берется начало графика в формате (гггг/мм/дд)
        &interval= секунд в интервале
        &width=610 - ширина графика в пикселях
        &height=210 - высота графика в пикселях
        &unit=°C - единицы измерения
*/

$w=610; //width
$h=210; //heigh
$right_border=25;
$bottom_border=30;
$left_border=50;
$top_border=20;
$title_top_offset=$top_border-3;
$font=dirname(__FILE__)."/fonts/tahoma.ttf";
$title_fontsize=10;
$scale_fontsize=8;
$threshold_fontsize=6;
$w_delta=80;
$px_per_point=6;
$unit="°C";
$end_time=time();
$approx='avg';
$fil01=0;

Discuss (0) (12)

See also:
2021-01-10 DROP_TABLE
2020-05-07 Телеграмм. Полезное
2019-06-30 Телеграмм. Меню - управление группами ПУ
2019-06-29 Телеграмм. Меню - запуск скриптов (сценариев)
2018-10-21 Настройки громкости
2018-10-07 Примеры кода
2018-05-02 Класс SOpenClose метод logicAction (по-русски "Входная дверь")
2018-04-05 Шаблон отображения в классе "Users"
2018-12-02 Режим "Никого нет дома"

Нижний Тагил, Россия

На форуме: Logrus