"Живые" графики нужна помощь.
Модератор: immortal
-
- Сообщения: 289
- Зарегистрирован: Вс сен 16, 2012 9:39 am
- Благодарил (а): 0
- Поблагодарили: 1 раз
Re: "Живые" графики нужна помощь.
Вопрос в первую очередь к sergejey, поменялся id ds18b20 который писался в базу, теперь заменил его другим, система ему присвоила другой id, соответственно теперь график строится без учета накопленной информации предыдущим датчиком, можно ли что-то в таблице исправить, чтоб данные писались по старому id?
-
- Сообщения: 1473
- Зарегистрирован: Сб окт 12, 2013 11:03 pm
- Благодарил (а): 49 раз
- Поблагодарили: 327 раз
Re: "Живые" графики нужна помощь.
- Можно алиас в owfs прописать
- Данные хранятся в обьекте а не в Устройстве. Пропишите в новое устройство ссылку на тот объект в который был.
А вот зачистку данных на определённый периуд в истории не хватает. Было такое что ипортился датчик и давал +80 градусов. Прошло полдня я его заменил, но данные по графику были не красивые. Пришлось ручками в базе чистить.
Хотелось бы иметь кнопочку и запросом даты времени до и после - для зачистки
- Данные хранятся в обьекте а не в Устройстве. Пропишите в новое устройство ссылку на тот объект в который был.
А вот зачистку данных на определённый периуд в истории не хватает. Было такое что ипортился датчик и давал +80 градусов. Прошло полдня я его заменил, но данные по графику были не красивые. Пришлось ручками в базе чистить.
Хотелось бы иметь кнопочку и запросом даты времени до и после - для зачистки
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
-
- Сообщения: 289
- Зарегистрирован: Вс сен 16, 2012 9:39 am
- Благодарил (а): 0
- Поблагодарили: 1 раз
Re: "Живые" графики нужна помощь.
Ivan писал(а):- Можно алиас в owfs прописать
- Данные хранятся в обьекте а не в Устройстве. Пропишите в новое устройство ссылку на тот объект в который был.
А вот зачистку данных на определённый периуд в истории не хватает. Было такое что ипортился датчик и давал +80 градусов. Прошло полдня я его заменил, но данные по графику были не красивые. Пришлось ручками в базе чистить.
Хотелось бы иметь кнопочку и запросом даты времени до и после - для зачистки
Так я так и сделал, в новом DS18b20 прописал точно такое же название в свойствах температуры, но это не помогло, добавился новый id который в таблице mysql, не id датчика, я правда еще в таблицу не лазил, может его можно руками изменить, на номер который былл до этого у датчика.
А по поводу запроссов, можно именно 85 в запросе быстро поправить, у меня тоже такие данные появились, все никак не займусь чисткой.
-
- Сообщения: 1473
- Зарегистрирован: Сб окт 12, 2013 11:03 pm
- Благодарил (а): 49 раз
- Поблагодарили: 327 раз
Re: "Живые" графики нужна помощь.
Никуда не нужно лазить.
1-wire - сканировать устройства. Найдется ещё один датчик в нем прописать привязки к объекту как в старом. И все. Данные все будут на месте, история хранится в свойстве объекта а не в устройстве
Ещё можно зайти localhost:2323 - движок owfs зайти на датчик и в алиасе нового поставить код старого (только не ошибись, вернуть потом обратно только переходом в браузере назад, если ссылка утеряна)
1-wire - сканировать устройства. Найдется ещё один датчик в нем прописать привязки к объекту как в старом. И все. Данные все будут на месте, история хранится в свойстве объекта а не в устройстве
Ещё можно зайти localhost:2323 - движок owfs зайти на датчик и в алиасе нового поставить код старого (только не ошибись, вернуть потом обратно только переходом в браузере назад, если ссылка утеряна)
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
-
- Сообщения: 289
- Зарегистрирован: Вс сен 16, 2012 9:39 am
- Благодарил (а): 0
- Поблагодарили: 1 раз
Re: "Живые" графики нужна помощь.
Надо будет попробовать, а то я сразу другое имя ввел. Кстати localhost:2323, это что за порт? это тот который обычно 3001 и работает с owhttpd, у меня сейчас 1-wire работает на роутере, и я запускаю только owserver.Ivan писал(а):Никуда не нужно лазить.
1-wire - сканировать устройства. Найдется ещё один датчик в нем прописать привязки к объекту как в старом. И все. Данные все будут на месте, история хранится в свойстве объекта а не в устройстве
Ещё можно зайти localhost:2323 - движок owfs зайти на датчик и в алиасе нового поставить код старого (только не ошибись, вернуть потом обратно только переходом в браузере назад, если ссылка утеряна)
-
- Сообщения: 1473
- Зарегистрирован: Сб окт 12, 2013 11:03 pm
- Благодарил (а): 49 раз
- Поблагодарили: 327 раз
Re: "Живые" графики нужна помощь.
Да это у меня порт службы owhttpd - Малина ![Smile :)](./images/smilies/icon_e_smile.gif)
![Smile :)](./images/smilies/icon_e_smile.gif)
Linux, Raspberry PI, MySensors
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
Connect: http://connect.smartliving.ru/profile/53
Мои проекты: http://smartliving.ru/profile/4
-
- Сообщения: 141
- Зарегистрирован: Пн апр 22, 2013 10:42 am
- Благодарил (а): 3 раза
- Поблагодарили: 8 раз
Re: "Живые" графики нужна помощь.
Вот и у меня наступила такая-же фигня!Urbas81 писал(а):Yeс пустыми промежутками до обновления проблем не было, рисовалась просто прямая, затем если данные появлялись все продолжалось, а сейчас в зависимости от выбранного интервала все ueяет туда-сюда.anemcov писал(а):У этих графиков есть какой-то глюк, если в запрашиваемом интервале есть пустые промежутки. Сам столкнулся с прямыми линиями в хвосте графика. Причем линия находится четко на последнем, правильном значении.Urbas81 писал(а):
хотя до этого работало с 30 секундным интервалом, сейчас с 20 минутным, но появляется какой-то график в самом начале, там где его быть не должно, например у меня база с 16 апреля, так вот на старой версии у меня до 16 апреля была прямая линия, а сейчас там отрисовываются какие-то значения.
Планирую подправить выдачу данных и графики таким образом, чтобы это были не просто равнораспределенные точки, а с привязкой во времени. И соответствующим образом выводились на график.
второй день бьюсь. Помогите что надо сделать? откатил вообще всю систему (windows) вот что стало: КАК ЛЕЧИТЬ ОТСУТСТВИЕ ДАННЫХ В БАЗЕ???
-
- Сообщения: 141
- Зарегистрирован: Пн апр 22, 2013 10:42 am
- Благодарил (а): 3 раза
- Поблагодарили: 8 раз
Re: "Живые" графики нужна помощь.
Поделитесь пожалуйста "старым" файликом index.phpUrbas81 писал(а):Пришло озорение, совсем забыл про pChart, положил старый index.php, все вернулось на место, надо будет сравнить что там добавилось.
-
- Сообщения: 178
- Зарегистрирован: Вс янв 05, 2014 5:37 am
- Благодарил (а): 10 раз
- Поблагодарили: 17 раз
Re: "Живые" графики нужна помощь.
Поделитесь опытом как вы прикрутили графики в домашнии страницы, уже 3-ий день бьюсь не могу понять как. Открывается просто пустая страница.
-
- Сообщения: 141
- Зарегистрирован: Пн апр 22, 2013 10:42 am
- Благодарил (а): 3 раза
- Поблагодарили: 8 раз
Re: "Живые" графики нужна помощь.
Да все так-же как в примерах (sample2.php):
на всякий случай вот код страницы:
Ну и хоть кто-нибудь пришлите старый index.php а то прямая в конце графика напрягает...
НАШЕЛ!!!! index.php из версии 0.3.0b от 06.03.2013. Графики строятся корректно. Буду искать в чем разница с новым.
на всякий случай вот код страницы:
Код: Выделить всё
<!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>
<div id="Inside" style="height: 280px; min-width: 550px"></div>
</body>
</html>
НАШЕЛ!!!! index.php из версии 0.3.0b от 06.03.2013. Графики строятся корректно. Буду искать в чем разница с новым.