2013-10-10 4 views
1

Позвольте мне сказать, что я начинаю использовать Javascript и JQuery, так что я о них не знаю, что было сказано здесь, это вопрос:Graph только часть вывода JSON

Я m, генерируя строку JSON, которая принимает состояние выводов arduino. Строка это в этом:

{ "02":0, "03":0, "04":0, "05":0, "06":0, "07":0, "08":0, "09":0, "10":0, "11":0, "12":0, "13":0, "14":756, "15":745, "16":722, "17":679, "18":634, "19":494 }

первая часть строки (02 к 13) относится к цифровым штифтами, которые я не нужна, вторая часть (14 до 19), являются аналоговые контакты, это те, которые мне нужны для построения диаграммы , и все, что я хочу, чтобы я программировал строку JSON для обновления каждые 5 секунд, так что это то, что мне нужно для графика, но я действительно не знаю, как это сделать

UPDATE (11/10/2013)

Позвольте мне прояснить мой вопрос, я делаю мобильный веб-страницу с помощью JQuery и jque ry mobile, на этой веб-странице я беру данные, которые поступают от arduino, и это температура, я смог показать значение температуры, но мне нравится составлять график этих значений (температура и время) и покажите их на странице. Как я уже сказал, я действительно ничего не знаю о веб-разработке, поэтому я не знаю, как реализовать этот график. это его, как я показать температуру

function value_update(data) { 
$.each(data, function (index, value) { 
    if(parseInt(index)=>13) { 
    $('#P'+index).text(((5*value*100)/1024).toFixed(1)+" °C"); 
    } 
}); 

И это то, как я положил его в HTML

<label><b>TEMPERATURE A0</b></label> 
<span class="inputvalue" name="P14" id="P14">0</span> 

Пожалуйста, помогите !!!!

+3

так в чем вопрос? как сделать график или как удалить цифровые контакты из json? – BeNdErR

+1

Для второй части вашего вопроса (который является отдельным вопросом сам по себе) google "jquery graph". Есть несколько хороших графических библиотек, некоторые из которых очень легкие и простые в использовании. – slebetman

ответ

0

Чтобы отфильтровать данные, которые вы можете сделать:

var data = { "02":0, "03":0, "04":0, "05":0, "06":0, "07":0, "08":0, "09":0, "10":0, "11":0, "12":0, "13":0, "14":756, "15":745, "16":722, "17":679, "18":634, "19":494 }; 
var toGraph = {}; 
$.each(data,function(key,value){ 
    if(key >= 14){ 
     toGraph[key] = value; 
    } 
}); 

//toGraph now holds the wanted data: 
console.log(toGraph); //Outputs Object {14: 756, 15: 745, 16: 722, 17: 679, 18: 634, 19: 494} 
+0

спасибо за ответ, но мне действительно нужно больше разъяснений на вашем ответе, например, как я могу поместить его на страницу html и как его реализовать, я сожалею об этом, но, как я уже сказал, я действительно начинаю узнавать о веб-разработке и динамическом контенте. – ingpussy

+0

@ user2865808 Вышеприведенный код создает новый объект с данными, которые имеют ключ большего или равный 14, это лучшее, что я мог бы сделать, поскольку с вашего вопроса неясно, какая помощь вам нужна, пожалуйста, обновите свой вопрос с помощью текущего код и четкое предложение о том, что вам нужно –

+0

Я обновляю свой вопрос ... – ingpussy

0

Вы можете решить первую часть двумя способами.

Первый создает строку значений и использует .substring, получая точно значения, которые вы ищете.

Второй, и, вероятно, лучший, заключается в том, чтобы хранить все значения в массиве, а затем извлекать значения, которые вы ищете, благодаря позициям значений массива. Если вам, в конце концов, нужна строка значений, вы можете преобразовать значения массива в строку. С точки зрения гибкости данных, я бы сказал, что массив в строку - это путь, на всякий случай, если вы хотите сделать что-то еще со значениями в будущем.

Для пользовательской настройки обновления простой setInterval() будет делать трюк.

Для начинающего курса в Javascript, я рекомендую проверить код.

+0

Данные в OP не являются строкой, а объектом JSON –

+0

oh, вы правы: x – Malcomiles

Смежные вопросы