1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
import numpy as np
import matplotlib.pyplot as plt
import matplotlib
import argparse
import json
import seaborn
seaborn.set_style('whitegrid')
parser = argparse.ArgumentParser(description='Process logs')
parser.add_argument('-x', help='name of parameters on x axis', default='time')
parser.add_argument('-y', help='name of parameters on y axis', default='rmse')
parser.add_argument('f', help='list of logs to parse', nargs='+')
parser.add_argument('-dest', help='name of figure to save', default='fig.png')
args = parser.parse_args()
def default():
for file_name in args.f:
x, y = [], []
with open(file_name) as f:
for line in f:
jason = json.loads(line)
x.append(jason[args.x])
y.append(jason[args.y])
plt.plot(x, y, label=file_name)
plt.legend()
plt.xlabel(args.x)
plt.ylabel(args.y)
plt.savefig(args.dest)
def tmp_finale():
plt.clf()
for file_name in args.f:
x, y = [], []
with open(file_name) as f:
for index, line in zip(range(15), f):
assert index <= 15
jason = json.loads(line)
x.append(jason[args.x])
y.append(np.sqrt(jason[args.y]))
plt.plot(x, y, label=file_name)
plt.legend(fontsize=15)
plt.xlabel(r"Nbr of Batches (size $100$)", fontsize=15)
plt.ylabel(r"RMSE", fontsize=15)
plt.savefig(args.dest)
if __name__ == "__main__":
tmp_finale()
|