draw.py 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import matplotlib.pyplot as plt
  2. import numpy as np
  3. import os
  4. LEAD_FILE = 'log'+os.sep+"f_feedback.hist"
  5. F_FILE = 'log'+os.sep+"f_output.hist"
  6. LEAD_PROCESSED_IMG = 'img'+os.sep+"feedback_history_processed.png"
  7. F_PROCESSED_IMG = 'img'+os.sep+"output_history_processed.png"
  8. SEP = ","
  9. NODES = 1000 # number of nodes logged
  10. def draw():
  11. with open(LEAD_FILE) as f:
  12. buf = f.read()
  13. nodes = buf.split(SEP)[:-1]
  14. node_log = []
  15. for i in range(0, len(nodes)):
  16. node_log+=[int(float(nodes[i]))]
  17. freq_single_lead = sum(np.array(node_log)==1)/float(len(node_log))
  18. print("single leader frequency: {}".format(freq_single_lead))
  19. plt.plot(node_log)
  20. plt.legend(['#leads'])
  21. plt.savefig(LEAD_PROCESSED_IMG)
  22. with open(F_FILE) as f:
  23. buf = f.read()
  24. nodes = buf.split(SEP)[:-1]
  25. node_log = []
  26. for i in range(0, len(nodes)):
  27. node_log+=[float(nodes[i])]
  28. plt.plot(node_log)
  29. plt.legend(['#leads', 'f'])
  30. plt.savefig(F_PROCESSED_IMG)