визуализация данных

Модератор: Alex

alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am

Re: визуализация данных

Сообщение alexsis_76 »

Скрипт демонстрирует работу с jquery,счетчик нажатий кнопки и простая анимация.
585_Orange_pi_JS.7z
(84.56 КБ) 186 скачиваний
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am

Re: визуализация данных

Сообщение alexsis_76 »

простенький вывод из json файла ,пример работы с аяксом(запрос раз в секунду)
445.7z
(872 байт) 230 скачиваний
никаких мозговыносящих XMLHttpRequest и бесконечных getElementById :D
вдогонку
чтоб не лез в кеш написать
$.ajaxSetup({
cache: false
});
Аватара пользователя
ser009
Сообщения: 595
Зарегистрирован: Сб окт 13, 2012 9:55 am

Re: визуализация данных

Сообщение ser009 »

Применял кто такие визуализации для полученных данных на АМС???
http://beloweb.ru/javascript-jquery/bes ... ektov.html
Изображение
Изображение
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: визуализация данных

Сообщение serghei »

Я устанавливал SteelSeries. Сами библиотеки воткнуть не проблема. Вот прицепить Ажакс-запросы к данным АМС - не могу уже полгода.Alexsis-76 объяснял десяток раз , но до меня так и не доходит, как прицепить жквери. Вечером выложу htm-страницу.
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am

Re: визуализация данных

Сообщение alexsis_76 »

но до меня так и не доходит
:D ну ты блин даешь
я думал ты уже давно все приделал.
там все просто
serghei
Сообщения: 2575
Зарегистрирован: Пт ноя 06, 2015 10:22 am
Откуда: Кишинёв

Re: визуализация данных

Сообщение serghei »

Очень просто (2 месяца) понадобилось для запуска цветного спидометра через XML-страницу. Еще полгода назад прикрутил и вывел на страницу SteelSeries. Все что не требует Get URL работает ( часы , секундомеры и рандомные значения). Благодаря Xor все это заработало на МД. Тупой перенос на АМС не работает ( естественно). Когда прикрутил модуль RobotDyn к Дуе и случайно открыл страницу со спидометрами , в сериале увидел это
SPOILERSPOILER_SHOW
Из всего работают только часы
Из всего работают только часы
6_.jpg (225.05 КБ) 6238 просмотров
То есть браузер спрашивает АМС согласно коду , а ответ не попадает в библиотеку.
Вот и вопрос - что надо вписать в код АМС , чтобы библиотека увидела наше значение? При этом если вместо 0 у начального положения стрелки задаю какое нибудь значение - она правильно отображается.
Ну и страничка
6.rar
(1.54 КБ) 223 скачивания
Библиотеки
Вложения
SteelSeries.rar
(45.72 КБ) 197 скачиваний
AMS : ESP32 + NRF24 + 1Wire-I2C мост DS2482 + счетчик DS2423 + сеть MySensors + редактирование страниц в браузере + Upload по воздуху + SPIFFS
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am

Re: визуализация данных

Сообщение alexsis_76 »

Ну да тебе и пишут err_empty_response
твой парсер не нашел данных подходящих под этот запрос(каков вопрос таков и ответ)
посмотри внимательно вот этот код
function Get(){
$.getJSON('gotdata.json', function(data){
$('#sensor').html('<h1> Name : '+data.name+'</h1>');
$('#date').html('<h1> Data : '+data.date+'</h1>');
$('#value').html('<h1> Value : '+data.value+'</h1>');
$('#number1').html('<h1> Tel 1 : '+data.phoneNumbers[0]+'</h1>');
$('#number2').html('<h1> Tel 2 : '+data.phoneNumbers[1]+'</h1>');
$('#number3').html('<h1> Tel 3 : '+data.phoneNumbers[2]+'</h1>');
$('#number4').html('<h1> Tel 4 : '+data.phoneNumbers[3]+'</h1>');

});
}
setInterval('Get()', 1000);
он один в один повторяет твой только проще
вот это
$.getJSON('gotdata.json', function(data)});
то же самое что и вот это
$.ajax({
url: url,
}).done(function(data) {

});
сдесь я говорю "пришли мне файл gotdata.json'"
после завершения запроса будет вызвана анонимная функция function с твоими данными
а зачем делать кучу
setInterval(function(){ live_upd("GET /objects/?object=tempSTR&op=m&m=update&v=", RadialTout); },6000);// конечно это не работает
setInterval(function(){ live_upd("request_generic=tempSTR", RadialTin); },7000);
setInterval(function(){ live_upd("/pChart/?op=value&p=ws.windLatest", windSpeed);}, 1500);
setInterval(function(){ live_upd("/pChart/?op=value&p=weather_my.pressure", RadialPress); },12000);
если все данные можно получить одним запросом?
в файле FULL.htm есть такое
// send HTTP GET request
request.open("GET", "req_el_freq" + 'oscill' + randomNoCache(), true);
request.send(null);
setTimeout('getElectroForm()', 2000);
} // getElectroForm()
request.open("GET", "req_el_freq" + 'oscill' + randomNoCache(), true);
req_el_freq
а в server_ajax.ino такое
else if (StrContains(HTTP_req, "req_el_freq")) {sendXmlAnswer(cl); checkOscill(); responseElectroFreq(cl);}
в ответ на твое
req_el_freq
тебе посылают
responseElectroFreq(cl);
вот и все
Аватара пользователя
ser009
Сообщения: 595
Зарегистрирован: Сб окт 13, 2012 9:55 am

Re: визуализация данных

Сообщение ser009 »

вот примеры датчиков.
Помогите с функцией передачи значений.
https://canvas-gauges.com/documentation/examples/

вот пример все с того же сайте. Но как передать значение???
SPOILERSPOILER_SHOW

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

<script src="gauge.min.js"></script>
<canvas data-type="linear-gauge"
        data-width="200"
        data-height="600"
></canvas>

<script>
var gaugeElement = document.getElementsByTagName('canvas')[0];

gaugeElement.setAttribute('data-border-radius', 20);
gaugeElement.setAttribute('data-color-numbers', 'red');
gaugeElement.setAttribute('data-type', 'radial-gauge');
gaugeElement.setAttribute('data-type', 'linear-gauge');
</script>
вот кусок моего кода получения данных. выполнено в виде цикла for
SPOILERSPOILER_SHOW

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

...
var ghvalue = ["hum_air", "hum_gr", "press", "temp_air", "temp_woter"];
...
function getValue() {
  var request = new XMLHttpRequest();
  request.onreadystatechange = function() {
    if (this.readyState == 4) {
      if (this.status == 200) {
        if (this.responseXML != null) {
          // net activ
          insertTick(30, bufferCpuLoad2);
            for (var i = 0; i < ghvalue.length; i++) {
              try {
                var temp = this.responseXML.getElementsByTagName(ghvalue[i])[0].childNodes[0].nodeValue;
              } catch (err) {
                  temp = "-1";
                }
              try {
                document.getElementById(ghvalue[i]).innerHTML = temp;
              } catch (err) { }
            }
            }

        } //if (this.responseXML != null)
      } // if (this.status == 200)
    } // if (this.readyState == 4)
  request.open("GET", "request_valgh" + randomNoCache(), true);
  request.send(null);
  setTimeout('getValue()', 3000);
  }
...
<p>Влажность грунта: <span class="value" id="hum_gr">-999</span> % </p>
alexsis_76
Сообщения: 792
Зарегистрирован: Пт янв 22, 2016 10:08 am

Re: визуализация данных

Сообщение alexsis_76 »

https://canvas-gauges.com/documentation/examples/ не открывается
данные в каоком формате нужно получить (xml,json)?

по виду кода в xml
Аватара пользователя
ser009
Сообщения: 595
Зарегистрирован: Сб окт 13, 2012 9:55 am

Re: визуализация данных

Сообщение ser009 »

alexsis_76 писал(а):https://canvas-gauges.com/documentation/examples/ не открывается
данные в каком формате нужно получить (xml,json)?

по виду кода в xml
Данные на страничке есть.
Нужно передать эти значения в график
Ответить