瀏覽代碼

Update graph.html to data

jomjol 3 年之前
父節點
當前提交
716c23fed3
共有 2 個文件被更改,包括 91 次插入9 次删除
  1. 9 9
      sd-card/html/graph.html
  2. 82 0
      sd-card/html/graph_data.html

+ 9 - 9
sd-card/html/graph.html

@@ -26,21 +26,21 @@ console.log (hash);
 var d = new Date();
 var d = new Date();
 var options="<option>Please Select...</option>";
 var options="<option>Please Select...</option>";
 for (var i=0;  i<27; i++) {
 for (var i=0;  i<27; i++) {
-  var currentDate = new Date(d-i*60*60*24*1000);
-  var option = currentDate.getFullYear()+"-"+(currentDate.getMonth()+1)+"-"+currentDate.getDate()
-  options += "<option>"+option+"</option>\n";
+    var currentDate = new Date(d-i*60*60*24*1000);
+    var option = currentDate.getFullYear()+"-"+(currentDate.getMonth()+1)+"-"+currentDate.getDate()
+    options += "<option>"+option+"</option>\n";
 }
 }
 document.getElementById("selector").innerHTML = options;
 document.getElementById("selector").innerHTML = options;
 
 
 var dateString = d.getFullYear() + "-" + (d.getMonth()+1) + "-" + d.getDate();    
 var dateString = d.getFullYear() + "-" + (d.getMonth()+1) + "-" + d.getDate();    
 if (hash!="") {
 if (hash!="") {
-  dateString = hash.substring(1);
+    dateString = hash.substring(1);
 }
 }
-fetch('/fileserver/log/message/log_'+dateString+'.txt')
+fetch('/fileserver/log/data/data_'+dateString+'.txt')
 .then(response => {
 .then(response => {
     // handle the response
     // handle the response
     if (response.status == 404) {
     if (response.status == 404) {
-      alert("no log data available for "+dateString);
+        alert("no log data available for "+dateString);
     }
     }
     response.text()
     response.text()
     .then( result => {
     .then( result => {
@@ -53,10 +53,10 @@ fetch('/fileserver/log/message/log_'+dateString+'.txt')
 
 
         var timex = 1;
         var timex = 1;
         for (let line of lines) {
         for (let line of lines) {
-            if (line.includes("PostProcessing - Raw")) {
+            {
                 console.log(line);
                 console.log(line);
-                var value = line.split(" ")[6];
-                var time  = line.split(" ")[0];
+                var value = line.split("\t")[3];
+                var time  = line.split("\t")[0];
                 console.log("> "+time+" "+value+"\n");
                 console.log("> "+time+" "+value+"\n");
                 if (value<1000) {
                 if (value<1000) {
                     trace.x.push(timex);
                     trace.x.push(timex);

+ 82 - 0
sd-card/html/graph_data.html

@@ -0,0 +1,82 @@
+
+<html>
+    <head>
+    <script src='https://cdn.plot.ly/plotly-2.14.0.min.js'></script>
+    <style>
+        textarea {
+            width: 600px;
+            height: 300px;
+        }
+    </style>
+    <script>
+    function run() {
+      var el = document.getElementById('cnsl');
+      el && eval(el.value);
+    }
+    </script>
+    </head>
+    <body>
+    <div id='chart'></div>
+    <select id="selector" onchange="document.location.href=document.location.href.split('#')[0]+'#'+this.value;run();"></select>
+    <button onclick="document.getElementById('editor').hidden = false; this.hidden = true;" >Editor</button>
+    <div id='editor' hidden='true'>
+    <textarea id="cnsl">
+var hash = window.location.hash;
+console.log (hash);
+var d = new Date();
+var options="<option>Please Select...</option>";
+for (var i=0;  i<27; i++) {
+  var currentDate = new Date(d-i*60*60*24*1000);
+  var option = currentDate.getFullYear()+"-"+(currentDate.getMonth()+1)+"-"+currentDate.getDate()
+  options += "<option>"+option+"</option>\n";
+}
+document.getElementById("selector").innerHTML = options;
+
+var dateString = d.getFullYear() + "-" + (d.getMonth()+1) + "-" + d.getDate();    
+if (hash!="") {
+  dateString = hash.substring(1);
+}
+fetch('/fileserver/log/message/log_'+dateString+'.txt')
+.then(response => {
+    // handle the response
+    if (response.status == 404) {
+      alert("no log data available for "+dateString);
+    }
+    response.text()
+    .then( result => {
+        var lines = result.split("\n");
+        var trace = {
+        x: [],
+        y: [],
+        type: 'scatter'
+        };
+
+        var timex = 1;
+        for (let line of lines) {
+            if (line.includes("PostProcessing - Raw")) {
+                console.log(line);
+                var value = line.split(" ")[6];
+                var time  = line.split(" ")[0];
+                console.log("> "+time+" "+value+"\n");
+                if (value<1000) {
+                    trace.x.push(timex);
+                    timex += 1;
+                    trace.y.push(value);
+                }
+            }
+        }
+        console.log(trace);
+        var data = [trace];
+        Plotly.newPlot('chart', data);
+    });
+}).catch((error) => {
+    // handle the error
+    console.log(error);
+alert("test");
+});        
+</textarea><br />
+<button onclick="run();">run</button>
+</div>
+<script>run();</script>
+</body>
+</html>