|
|
@@ -110,8 +110,9 @@ def distribute(s, e, prod, minsize): |
|
|
|
#print('start') |
|
|
|
|
|
|
|
prodpoints = [] |
|
|
|
prodindex = [] |
|
|
|
conspoints = [] |
|
|
|
index = [] |
|
|
|
consindex = [] |
|
|
|
|
|
|
|
def serializearrowasmili(obj): |
|
|
|
if not isinstance(obj, arrow.Arrow): |
|
|
@@ -124,25 +125,24 @@ for i in arrow.Arrow.range('day', startdate, enddate): |
|
|
|
s, e = makestartend(i) |
|
|
|
noon = i.replace(hour=12) |
|
|
|
|
|
|
|
index.append((noon, whprod)) |
|
|
|
prodindex.append((noon, whprod)) |
|
|
|
#print(repr(i), whprod) |
|
|
|
|
|
|
|
dist = [] |
|
|
|
|
|
|
|
conspoints.extend(makeconsumption(s, rand.uniform(400,800), 100, timedelta(minutes=1))) |
|
|
|
tmppoints = makeconsumption(s, rand.uniform(400,800), 100, timedelta(minutes=1)) |
|
|
|
consindex.append((noon, sum((i[1] / 60 for i in tmppoints), 0))) |
|
|
|
conspoints.extend(tmppoints) |
|
|
|
|
|
|
|
# zero points for non-production |
|
|
|
import sys |
|
|
|
print(repr((i, s)), file=sys.stderr) |
|
|
|
dist.extend(distribute(i, s, 0, timedelta(minutes=5))) |
|
|
|
|
|
|
|
# production |
|
|
|
print(repr((s, e)), file=sys.stderr) |
|
|
|
dist.extend(distribute(s, e, whprod, timedelta(seconds=20))) |
|
|
|
|
|
|
|
# zero points for non-production |
|
|
|
eod = i.replace(hour=23, minute=55) |
|
|
|
print(repr((e, eod)), file=sys.stderr) |
|
|
|
dist.extend(distribute(e, eod, 0, timedelta(minutes=5))) |
|
|
|
|
|
|
|
# print timestamps as miliseconds |
|
|
@@ -156,4 +156,4 @@ for i in arrow.Arrow.range('day', startdate, enddate): |
|
|
|
#print(json.dumps(tuple(dist), indent=2)) |
|
|
|
prodpoints.extend(dist) |
|
|
|
|
|
|
|
print('fakedata =', json.dumps(dict(production=prodpoints, consumption=conspoints, index=index), default=serializearrowasmili)) |
|
|
|
print('fakedata =', json.dumps(dict(production=prodpoints, prodindex=prodindex, consumption=conspoints, consindex=consindex), default=serializearrowasmili)) |