Модуль аналитики Multi Analog

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Ответить
Alex
Сообщения: 2357
Зарегистрирован: Пт апр 20, 2012 12:53 pm
Благодарил (а): 42 раза
Поблагодарили: 262 раза

Модуль аналитики Multi Analog

Сообщение Alex » Пн мар 04, 2013 12:25 pm

Модуль аналитики Multi Analog

Этот модуль предназначен для визуализации изменения процессов во времени. Например, можно посмотреть, как меняется сетевое напряжение (или температура воздуха) по времени суток, по дням недели, по месяцам и т. д. Можно вывести усредняющую кривую и увидеть закономерности в изменении контролируемой величины. Для работы с модулем просто поместите его в папку pChart.

Обращение к модулю
<img src="/pChart/multia.php?p= …

-----------------------------------------------------
Внимание! Модуль экспериментальный и в будущем могут изменяться функции и параметры вызова. Если вы используете его, то будьте готовы к этому. Модуль тестировался на светлой теме.
-----------------------------------------------------

Временные периоды задаются следующим образом:

&start=13/02/6 - дата начала первого (основного) периода
&period=86400 - длительность периода в секундах (1 день)
&res=900 - разрешение анализа в секундах (чем меньше — тем точнее и затратнее по ресурсам)

&start2=13/02/7 - дата начала второго периода
&start3=13/02/8 - дата начала третьего периода и т. д.

Модуль поддерживает 9 каналов, т. е. вы можете задавать до 9 периодов одновременно. Естественно, чем больше периодов, тем больше нагрузка на сервер.

Параметр
&middleall=1

включает режим усреднения всех кривых и вывод результирующей кривой.

Наряду с поддержкой меток введена поддержка легенды.

Можно задавать цвет отдельно для каждой линии.

Модуль содержит 2 вида фильтров. Fil01 сглаживает графики, Fil02 убирает нулевые провалы из графиков.


В заголовке файла описаны все параметры. Примеры вызова.

Код: Выделить всё


<table>
  <tr>
    <td bgcolor="#ffffff">
      <div align="center">
<font size="4" color="gray" face="Arial"><b>Напряжение в сети</b></font><br>
<img src="/pChart/multia.php?p=analog07.value&period=86400&res=1200
&width=600&height=300&gtype=curve&labels=0&grid=1&scale=0&legend=1&legx=460&legy=120&unit=В
&start=13/02/4&start2=13/02/11&start3=13/02/5&start4=13/02/6&start5=13/02/7&start_6=13/02/8&start_7=13/02/9&start_8=13/01/28&start_9=13/02/19
&n0=Line0&n1=13/02/1&n2=13/02/2&n3=13/02/3&n4=13/02/4&n5=13/02/5&n6=13/02/6&n7=13/02/7&n8=13/02/8&n9=13/02/9
&c1fil01=2&c2fil01=2&c3fil01=2&c4fil01=2&c5fil01=2&c6fil01=2&c7fil01=2&c8fil01=2&c9fil01=2">
      </div><br>

      <div align="center">
<font size="4" color="gray" face="Arial"><b>Напряжение в сети</b></font><br>
<img src="/pChart/multia.php?p=analog07.value&period=86400&res=1200
&width=600&height=300&gtype=curve&labels=0&grid=1&scale=0&labels=1&legend=0&legx=200&legy=100&middleall=1&gcolor=red&unit=В
&start=13/02/4&start2=13/02/11&start3=13/02/5&start4=13/02/6&start5=13/02/7&start_6=13/02/8&start_7=13/02/9&start_8=13/01/28&start_9=13/02/19
&n0=Среднее за 5 дней&n1=13/02/1&n2=13/02/2&n3=13/02/3&n4=13/02/4&n5=13/02/5&n6=13/02/6&n7=13/02/7&n8=13/02/8&n9=13/02/9
&c1fil01=2&c2fil01=2&c3fil01=2&c4fil01=2&c5fil01=2&c6fil01=2&c7fil01=2&c8fil01=2&c9fil01=2">
      </div><br>

    </td>
  </tr>
</table>
 
Вложения
ma1.png
ma1
ma1.png (27.1 КБ) 6727 просмотров
ma2.png
ma2
ma2.png (81.35 КБ) 6727 просмотров
multia.zip
multia.php
(6.55 КБ) 362 скачивания
Alex
Сообщения: 2357
Зарегистрирован: Пт апр 20, 2012 12:53 pm
Благодарил (а): 42 раза
Поблагодарили: 262 раза

Re: Модуль аналитики Multi Analog

Сообщение Alex » Пн мар 04, 2013 12:37 pm

<?php

/*
pChart multia.php v.1.0.0
(multi analog)

//------------------- Parameters

&width= - 260*
&height= - >=180 210*
&px= - precision (10*)
&unit= - ""*
&title= - ""*
&scale= - 1(SCALE_NORMAL)/-*(SCALE_START0)
&line= - width of line (1*)
&point= - radius of points (1*)
&points= - 1/-* draw points
&grid= - 1/-*
&border= - 1/-*
&labels= - 1/-*
&legend= - 1/-*
&legx= - ../100* x coord of legend
&legy= - ../100* y coord of legend

//------------------- Objects

&p= - object1.value*

&n0= - name of middleall result line
&n1= - name of period1
&n2= - name of period2
&n3= - name of period3
&n4= - name of period4
&n5= - name of period5
&n6= - name of period6
&n7= - name of period7
&n8= - name of period8
&n9= - name of period9

//custom period(!)
&start=13/02/6 - дата начала
&period=86400 - период в секундах (1 день)
&res=900 - разрешение в секундах

&start2= - start period 2
&start3= - start period 3
&start4= - start period 4
&start5= - start period 5
&start6= - start period 6
&start7= - start period 7
&start8= - start period 8
&start9= - start period 9

//days in seconds & resolution
86400 - 1 day (res ~1000)
604800 - 7 days (res ~10000)
1209600 - 14 days (res ~20000)
2592000 - 30 days (res ~40000)

//types of graphics(!)
&gtype=
curve - drawCubicCurve
bar - drawBarGraph
line - drawLineGraph
plot - drawPlotGraph
fline - drawFilledLineGraph
fcurve- drawFilledCubicCurve

//------------------- Colors

//one (first) channel generic color
&gcolor= - (generic colors)

//generic channels colors
&g1color= - generic colors (-*)
&g2color= - generic colors (-*)
&g3color= - generic colors (-*)
&g4color= - generic colors (-*)
&g5color= - generic colors (-*)
&g6color= - generic colors (-*)
&g7color= - generic colors (-*)
&g8color= - generic colors (-*)
&g9color= - generic colors (-*)

//custom (RGB) channels colors
&c1r=, &c1g=, &c1b= - color of channel 1 (-*)
&c2r=, &c2g=, &c2b= - color of channel 2 (-*)
&c3r=, &c3g=, &c3b= - color of channel 3 (-*)
&c4r=, &c4g=, &c4b= - color of channel 4 (-*)
&c5r=, &c5g=, &c5b= - color of channel 5 (-*)
&c6r=, &c6g=, &c6b= - color of channel 6 (-*)
&c7r=, &c7g=, &c7b= - color of channel 7 (-*)
&c8r=, &c8g=, &c8b= - color of channel 8 (-*)
&c9r=, &c9g=, &c9b= - color of channel 9 (-*)

//generic colors
red (220,50,50)
orange(220,190,50)
blue (100,140,220)
green (100,220,140)
brown (220,140,100)
gray* (150,150,150)

//background colors
&bcolor= - color background (-*)
bgcolor= - background graphics (-*)
&bg_r=,&bg_g=,&bg_b= - background custom colors RGB (-*)

//------------------- Filters

//"analog" filter 01
&c1fil01= - for channel 1
&c2fil01= - for channel 2
&c3fil01= - for channel 3
&c4fil01= - for channel 4
&c5fil01= - for channel 5
&c6fil01= - for channel 6
&c7fil01= - for channel 7
&c8fil01= - for channel 8
&c9fil01= - for channel 9

"digital" filter 02
&c1fil02= - for channel 1
&c2fil02= - for channel 2
&c3fil02= - for channel 3
&c4fil02= - for channel 4
&c5fil02= - for channel 5
&c6fil02= - for channel 6
&c7fil02= - for channel 7
&c8fil02= - for channel 8
&c9fil02= - for channel 9

//------------------- Analytics

&middleall= - 1/-*

//------------------- Notes

! - required
* - by default
- - none
*/
Аватара пользователя
sergejey
Site Admin
Сообщения: 4286
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 76 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Модуль аналитики Multi Analog

Сообщение sergejey » Пн мар 04, 2013 12:49 pm

Добавил в общую ветку.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Ответить