Download Jar. Libraryless. Click here for Pure Java version (1513L/11K).
1 | !7 |
2 | |
3 | html { |
4 | ret hhtml(hhead( |
5 | loadJQuery() |
6 | + htitle("ante! available computing power") |
7 | + [[<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.7.2/Chart.bundle.min.js"></script>]]) |
8 | + hbody( |
9 | hSilentComputator() |
10 | + [[<div style="width: 100%;"><canvas id="canvas"></canvas>]] |
11 | + hjavascript([[ |
12 | |
13 | window.chartColors = { |
14 | red: 'rgb(255, 99, 132)', |
15 | orange: 'rgb(255, 159, 64)', |
16 | yellow: 'rgb(255, 205, 86)', |
17 | green: 'rgb(75, 192, 192)', |
18 | blue: 'rgb(54, 162, 235)', |
19 | purple: 'rgb(153, 102, 255)', |
20 | grey: 'rgb(201, 203, 207)' |
21 | }; |
22 | |
23 | // INITIALIZATION |
24 | |
25 | function randomScalingFactor() { return 5; } |
26 | |
27 | var config = { |
28 | type: 'line', |
29 | data: { |
30 | labels: [], |
31 | datasets: [{ |
32 | label: 'Computing devices', |
33 | backgroundColor: window.chartColors.red, |
34 | borderColor: window.chartColors.red, |
35 | data: [], |
36 | fill: false, |
37 | }, { |
38 | label: 'Connected devices', |
39 | backgroundColor: window.chartColors.yellow, |
40 | borderColor: window.chartColors.yellow, |
41 | data: [], |
42 | fill: false, |
43 | }, { |
44 | data: [], |
45 | showLine: false, |
46 | pointRadius: 0 |
47 | }] |
48 | }, |
49 | options: { |
50 | legend: { |
51 | labels: { |
52 | filter: function(legendItem, chartData) { |
53 | //return legendItem.dataSetIndex != 2; |
54 | return legendItem.text != null; |
55 | }, |
56 | fontSize: 18 |
57 | }, |
58 | }, |
59 | |
60 | responsive: true, |
61 | title: { |
62 | display: true, |
63 | text: 'ante! available computing power', |
64 | fontSize: 32 |
65 | }, |
66 | tooltips: { |
67 | mode: 'index', |
68 | intersect: false, |
69 | filter: function(item, data) { return item.datasetIndex < 2; } |
70 | }, |
71 | hover: { |
72 | mode: 'nearest', |
73 | intersect: true |
74 | }, |
75 | scales: { |
76 | xAxes: [{ |
77 | display: true, |
78 | scaleLabel: { |
79 | display: true, |
80 | labelString: 'Time' |
81 | } |
82 | }], |
83 | yAxes: [{ |
84 | display: true, |
85 | scaleLabel: { |
86 | display: true, |
87 | labelString: '' |
88 | }, |
89 | ticks: { stepSize: 1 } |
90 | }] |
91 | } |
92 | } |
93 | }; |
94 | |
95 | window.onload = function() { |
96 | var ctx = document.getElementById('canvas').getContext('2d'); |
97 | window.myLine = new Chart(ctx, config); |
98 | var start = +new Date(), n = -2; |
99 | var lastValue = null; |
100 | |
101 | var f; |
102 | function f() { |
103 | $.get('http://butter.botcompany.de:8080/1013835/raw/n2', function(jsn) { |
104 | jsn = JSON.parse(jsn); |
105 | var value = jsn[1]; |
106 | var value2 = jsn[0]; |
107 | var value3 = jsn[1]+1; // dummy for max |
108 | var diff = Math.round((new Date()-start)/$INTERVAL); |
109 | var ds = config.data.datasets[0].data; |
110 | var ds2 = config.data.datasets[1].data; |
111 | var ds3 = config.data.datasets[2].data; |
112 | var change = false; |
113 | while (n < diff) { |
114 | ++n; |
115 | config.data.labels.push(''); |
116 | if (lastValue == null) lastValue = value; |
117 | ds.push(value-lastValue); |
118 | lastValue = value; |
119 | ds2.push(value2); |
120 | ds3.push(value2+1); |
121 | change = true; |
122 | } |
123 | while (ds.length > 20) { |
124 | config.data.labels.shift(); |
125 | ds.shift(); |
126 | ds2.shift(); |
127 | ds3.shift(); |
128 | } |
129 | if (change) window.myLine.update(); |
130 | }); |
131 | } |
132 | setInterval(f, $INTERVAL); |
133 | f(); |
134 | }; |
135 | ]].replace("$INTERVAL", str(5000))))); |
136 | } |
Began life as a copy of #1013912
download show line numbers debug dex old transpilations
Travelled to 14 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, irmadwmeruwu, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt
No comments. add comment
Snippet ID: | #1013923 |
Snippet name: | ante! Graph [LIVE] |
Eternal ID of this version: | #1013923/49 |
Text MD5: | 4672fd262ce6232f97985c44e06c6520 |
Transpilation MD5: | 98b89a834c3edf7d964ba1ebe787f89e |
Author: | stefan |
Category: | javax / web |
Type: | JavaX source code (desktop) |
Public (visible to everyone): | Yes |
Archived (hidden from active list): | No |
Created/modified: | 2018-10-06 23:41:54 |
Source code size: | 3377 bytes / 136 lines |
Pitched / IR pitched: | No / No |
Views / Downloads: | 642 / 4480 |
Version history: | 48 change(s) |
Referenced in: | [show references] |