Страница 5 из 8

Re: Версия 0.6b

Добавлено: Сб фев 08, 2014 8:07 am
Satgate_M
dimik писал(а):
Satgate_M писал(а): А если не секрет, то как реализовали такие графики?
Где то здесь на сайте уже писал, но зная как тут трудно найти что надо повторю :)
Графики сделаны на основе примера sample2.php
В общем делается новая домашняя страница HTML и вставляем такой код:

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

<!DOCTYPE HTML>
<html>
        <head>
                <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
                <title>Highstock Example</title>
                <script type="text/javascript" src="/highcharts/js/jquery-1.7.1.min.js"></script>
                <script type="text/javascript" language="javascript">


var chart_preiod=15; //days
var chart_interval=1200; //seconds (interval);

var dateNow = new Date();
var startDate = new Date(dateNow.getTime() - chart_preiod*24*60*60*1000);
startDate.setHours(0,0,0,0);

$(function() {

url = '/pChart/?p=ws.tempOutside&op=values&start='+startDate.getFullYear()+'/'+(startDate.getMonth()+1)+'/'+(startDate.getDate())+'&interval='+chart_interval;


        $.getJSON(url, function(data) {
        
                //alert(data);
                // Create a timer
                var start = + new Date();
                var old_data=data;
                for(var i=0;i<old_data.length;i++) {
                 data[i]=parseFloat(old_data[i]);
                }
        
                // Create the chart
                var chart = new Highcharts.StockChart({
                    chart: {
                        renderTo: 'Outside',
                                events: {
                                        load: function(chart) {
                                                this.setTitle(null, {
                                                        text: 'Built chart at '+ (new Date() - start) +'ms'
                                                });
                                        }
                                },
                                zoomType: 'x'
                    },
        
                    rangeSelector: {
                        buttons: [{
                            type: 'hour',
                            count: 1,
                            text: '1h'
                        }, {
                            type: 'day',
                            count: 1,
                            text: '1d'
                        }, {
                            type: 'week',
                            count: 1,
                            text: '1w'
                        }, {
                            type: 'month',
                            count: 1,
                            text: '1m'
                        }, {
                            type: 'month',
                            count: 6,
                            text: '6m'
                        }, {
                            type: 'year',
                            count: 1,
                            text: '1y'
                        }, {
                            type: 'all',
                            text: 'All'
                        }],
                        selected: 3
                    },
        
                        yAxis: {
                                title: {
                                        text: 'Температура (°C)'
                                }
                        },
        
                    title: {
                                text: 'Температура на улице'
                        },
        
                        subtitle: {
                                text: 'Built chart at...' // dummy text to reserve space for dynamic subtitle
                        },
                        
                        series: [{
                        name: 'Temperature',
                        data: data,
                        pointStart: (startDate.getTime()- startDate.getTimezoneOffset() * 60*1000),
                        pointInterval: chart_interval * 1000,
                        tooltip: {
                                valueDecimals: 1,
                                valueSuffix: '°C'
                        }
                    }]
        
                });
        });
});
$(function() {

url = '/pChart/?p=ws.tempInside&op=values&start='+startDate.getFullYear()+'/'+(startDate.getMonth()+1)+'/'+(startDate.getDate())+'&interval='+chart_interval;


        $.getJSON(url, function(data) {
        
                //alert(data);
                // Create a timer
                var start = + new Date();
                var old_data=data;
                for(var i=0;i<old_data.length;i++) {
                 data[i]=parseFloat(old_data[i]);
                }
        
                // Create the chart
                var chart = new Highcharts.StockChart({
                    chart: {
                        renderTo: 'Inside',
                                events: {
                                        load: function(chart) {
                                                this.setTitle(null, {
                                                        text: 'Built chart at '+ (new Date() - start) +'ms'
                                                });
                                        }
                                },
                                zoomType: 'x'
                    },
        
                    rangeSelector: {
                        buttons: [{
                            type: 'hour',
                            count: 1,
                            text: '1h'
                        }, {
                            type: 'day',
                            count: 1,
                            text: '1d'
                        }, {
                            type: 'week',
                            count: 1,
                            text: '1w'
                        }, {
                            type: 'month',
                            count: 1,
                            text: '1m'
                        }, {
                            type: 'month',
                            count: 6,
                            text: '6m'
                        }, {
                            type: 'year',
                            count: 1,
                            text: '1y'
                        }, {
                            type: 'all',
                            text: 'All'
                        }],
                        selected: 3
                    },
        
                        yAxis: {
                                title: {
                                        text: 'Температура (°C)'
                                }
                        },
        
                    title: {
                                text: 'Температура в квартире'
                        },
        
                        subtitle: {
                                text: 'Built chart at...' // dummy text to reserve space for dynamic subtitle
                        },
                        
                        series: [{
                        name: 'Temperature',
                        data: data,
                        pointStart: (startDate.getTime()- startDate.getTimezoneOffset() * 60*1000),
                        pointInterval: chart_interval * 1000,
                        tooltip: {
                                valueDecimals: 1,
                                valueSuffix: '°C'
                        }
                    }]
        
                });
        });
});
                </script>
        </head>
        <body>
<script src="/highcharts/js/highstock.js"></script>
<script src="/highcharts/js/modules/exporting.js"></script>

<div id="Outside" style="height: 280px; min-width: 550px"></div>
<br>
<div id="Inside" style="height: 280px; min-width: 550px"></div>
        </body>
</html>
вот чего не смог пока сделать, так это прикрутить на эту-же страницу еще и стрелочные индикаторы.
Добавил, заработало!
А как проблемку решили с прямой линией в конце? Если не секрет)))

Re: Версия 0.6b

Добавлено: Сб фев 08, 2014 9:06 am
dimik
Конечно секрет! Ведь это же секретный форум! :D
А если серьезно, то нужно в папке pChart заменить index.php таким же файлом только от старой версии.
Вот отсюда:
http://smartliving.ru/Main/Download
возьмите версию 0.3.0b от 06.03.2013 там будет нужный файлик.
Сам файл прикрепить не могу, ограничения данного форума :(
С прямыми линиями автор обещал разобраться через пару недель :)

Re: Версия 0.6b

Добавлено: Сб фев 08, 2014 9:45 am
Satgate_M
Спасибо! Все заработало!

Re: Версия 0.6b

Добавлено: Сб фев 08, 2014 10:06 am
DiArt
Сергей, а можно попросить всё же в модуле market дописать <?php вместо <?
Править каждый раз неудобно после обновления

Re: Версия 0.6b

Добавлено: Сб фев 08, 2014 10:08 am
Amarok
Кстати, да. И хотелось бы, что-б домашняя страница главная не сбрасывалась в изначальное состояние

Re: Версия 0.6b

Добавлено: Сб фев 08, 2014 11:12 am
dimik
А почему это история объекта теперь отображается в виде графика то!?
Что за бред? У меня например много объектов ТЕКСТОВЫЕ как смотреть их историю?

Re: Версия 0.6b

Добавлено: Сб фев 08, 2014 11:43 am
Satgate_M
У меня вообще история объектов не отображается, но явно ведется тк как минимум графики за неделю строит.

Re: Версия 0.6b

Добавлено: Сб фев 08, 2014 1:01 pm
dimik
Если имеется ввиду вот эта история объектов:
1.jpg
1.jpg (162.92 КБ) 10155 просмотров
то она у меня тоже не работает.
А еще бывает вот тут история объектов:
2.jpg
2.jpg (162.67 КБ) 10155 просмотров
так вот она вместо значений стала ГРАФИКАМИ! причем с дурацкой припиской по оси Y "°C".

Re: Версия 0.6b

Добавлено: Сб фев 08, 2014 2:02 pm
Satgate_M
Ситуация как раз такая же и есть! как первый скриншот история не работает, а как на втором все графиками (даже то что текстовое или имеет статус в виде текста вкл/выкл).

Re: Версия 0.6b

Добавлено: Пн фев 10, 2014 10:33 am
sergejey
Про "историю объектов" -- она отключена. Я вообще уберу этот пункт из меню, т.к. это совсем не история значений, а история вызовов методов, которая когда-то использовалась для отладки. Что касается графиков в текстовых значениях, то проверю -- я там не делал вывод в виде графики, может кто-то другой добавил в исходник, а я не усмотрел. Но проверю и верну как было.