This commit is contained in:
Timo Hocker 2020-07-31 19:37:30 +02:00
parent 9e97ab9592
commit 9ec6440dc7
5 changed files with 19 additions and 11 deletions

View File

@ -24,6 +24,7 @@
"express-http-proxy": "^1.6.2",
"faker": "^4.1.0",
"knex": "^0.21.2",
"simplex-noise": "^2.4.0",
"sqlite3": "^5.0.0",
"vue": "^2.6.11",
"vue-chartjs": "^3.5.0",

View File

@ -1,12 +1,13 @@
'use strict';
const faker = require ('faker');
const sn = require ('simplex-noise');
function create_log () {
function create_log (index, simplex) {
const data = {
num1: faker.random.number (),
num2: faker.random.number (),
num3: faker.random.number ()
num2: simplex.noise2D (index * 0.1, 0),
num3: simplex.noise2D (index * 0.1, 1000)
};
return {
app: faker.random.word (),
@ -18,9 +19,10 @@ function create_log () {
async function seed (knex) {
console.log ('creating seeds');
const simplex = (new sn);
const log = (Array (20))
.fill (() => null)
.map (() => create_log ());
.map ((a, index) => create_log (index, simplex));
await knex ('log')
.del ();

View File

@ -1,7 +1,8 @@
<script>
import { Line, mixins } from 'vue-chartjs';
function resolve_data (set, keys) {
function resolve_data (set, index) {
const keys = typeof index === 'string' ? index.split ('/') : index;
const data = set[keys[0]];
if (keys.length === 1)
return data;
@ -27,7 +28,7 @@ export default {
},
computed: {
chart_data () {
const labels = this.data.map ((d) => d[this.xaxis]);
const labels = this.data.map ((d) => resolve_data (d, this.xaxis));
const datasets = this.yaxis.map ((y, index) => {
const res = {
label: y.label,
@ -37,7 +38,7 @@ export default {
backgroundColor: y.fill
};
for (const data of this.data)
res.data.push (resolve_data (data, y.field.split ('/')));
res.data.push (resolve_data (data, y.field));
return res;
});
return { datasets, labels };

View File

@ -12,7 +12,7 @@
/>
<ChartView
:data="parsed_log"
xaxis="app"
xaxis="timestamp"
:yaxis="datasets"
/>
<TableView
@ -38,9 +38,8 @@ export default {
computed: {
datasets () {
return [
{ label: 'test', field: 'data/num2', color: 'blue', fill: '#0000' },
{ label: 'abc', field: 'data/num1', color: '#ff000055', fill: '#0000' },
{ label: 'def', field: 'data/num1', color: '#00ff00', fill: '#f005' }
{ label: 'foo', field: 'data/num2', color: '#ff000055', fill: '#0000' },
{ label: 'bar', field: 'data/num3', color: '#00ff00', fill: '#0000' }
];
},
parsed_log () {

View File

@ -7790,6 +7790,11 @@ simple-swizzle@^0.2.2:
dependencies:
is-arrayish "^0.3.1"
simplex-noise@^2.4.0:
version "2.4.0"
resolved "https://registry.yarnpkg.com/simplex-noise/-/simplex-noise-2.4.0.tgz#81b3458fb22dccc3bc8dd9a977c73797f86f523a"
integrity sha512-OjyDWm/QZjVbMrPxDVi9b2as+SeNn9EBXlrWVRlFW+TSyWMSXouDryXkQN0vf5YP+QZKobrmkvx1eQYPLtuqfw==
slash@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55"