-
Notifications
You must be signed in to change notification settings - Fork 0
/
plot_clients.py
34 lines (34 loc) · 1023 Bytes
/
plot_clients.py
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
import matplotlib.pyplot as plt
acc = [[],[],[]]
for i in range(3):
with open(f"client{i+1}.txt") as f:
c = 0
for line in f.readlines():
line = line.strip()
if line and line[0] == "e":
c += 1
acc[i].append(float(line[-4:]))
plt.plot(range(1,21), acc[i], label= f"Client {i+1}")
plt.xticks(range(1,21))
# ax.xaxis.get_major_locator().set_params(integer=True)
plt.xlabel('Number of Epochs')
plt.ylabel('Accuracy')
plt.legend()
plt.grid()
plt.savefig("client_accuracy")
losses = [[],[],[]]
for i in range(3):
with open(f"client{i+1}.txt") as f:
c = 0
for line in f.readlines():
line = line.strip()
if line and line[0] == "e":
c += 1
losses[i].append(float(line[17:25]))
plt.plot(range(1,21), losses[i], label= f"Client {i+1}")
plt.xticks(range(1,21))
plt.xlabel('Number of Epochs')
plt.ylabel('Loss')
plt.legend()
plt.grid()
plt.savefig("client_loss")