【发布时间】:2016-09-09 11:24:38
【问题描述】:
尝试从内部 HTML 页面输入 JSON 数据时遇到问题。由于我不需要可视化表格,因此我正在努力确定数据是否正确存储在其中。
这是我的 ajax;
<script type="text/javascript">
google.charts.load('current', {'packages':['gauge']});
google.charts.setOnLoadCallback(drawChart);
$(document).ready(function(){
$('tempData').DataTable({
ajax: {
url: 'https://10.54.101.43/getData.json',
dataSrc: 'sensor',
},
columns: [
{data: 'label'},
{data: 'tempf'},
{data: 'tempc'}
]
});
});
这是图表的绘制:
function drawChart (){
var data = new google.visualization.DataTable();
data.addColumn('string', 'Label');
data.addColumn('number', 'Value');
data.addRows(1);
data.setValue(0, 0, 'Temp');
data.setValue(0, 1, 76);
var options = {
width: 400, height: 120,
redFrom: 69, redTo: 100,
yellowFrom: 31, yellowTo: 69,
greenFrom: 0, greenTo: 31,
minorTicks: 5
};
var chart = new google.visualization.Gauge(document.getElementById('chart_div'));
chart.draw(data, options);
setInterval(function() {
data.setValue(0, 1, 40 + Math.round(60 * Math.random()));
chart.draw(data, options);
}, 13000);
}
</script>
我要做的是从该 URL 获取数据,仅将相关信息存储在数组中,然后使用所需数据填充仪表。
编辑这是未格式化的 JSON。
{"name":"CAB-L1","date":"09/12/16 15:54:36","uptime":"21d 04:18:08","scale":1,"macaddr":"00:80:A3:A4:9B:2F","serial":"RA3E-A49B2F","devtype":85,"refresh":"60","disp":0,"interval":"300","gtmd_interval":"3600","version":"v2.0.1","port":80,"ip":"10.54.101.43","gtmd_disabled":"0","time_config":{"timezone": "0","format": "0", "display": "0", "daylight_saving_en": "0"},"sensor":[{"label":"Internal Sensor","tempf":"81.82","tempc":"27.68","highf":"94.31","highc":"34.62","lowf":"79.91","lowc":"26.62","alarm":4,"type":16,"enabled":1},{"label":"Ext Sensor 1","tempf":"32.00","tempc":"0.00","highf":"32.00","highc":"0.00","lowf":"32.00","lowc":"0.00","alarm":0,"type":0,"enabled":0}],"switch_sen":[{"label":"Switch Sen 1","enabled":1,"alarm":1,"status":0}]}
【问题讨论】:
标签: javascript json ajax google-visualization