graph.py 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #!/usr/bin/env python3
  2. import matplotlib.pyplot as plt
  3. import os
  4. import csv
  5. labels = []
  6. numbers = []
  7. numEntries = 1
  8. rows = []
  9. def bar_chart(numbers, labels, pos):
  10. plt.bar(pos, numbers, color='blue')
  11. plt.xticks(ticks=pos, labels=labels)
  12. plt.title("Jeopardy Results by Model")
  13. plt.xlabel("Model")
  14. plt.ylabel("Questions Correct")
  15. plt.show()
  16. def calculatecorrect():
  17. directory = os.fsencode("./examples/jeopardy/results/")
  18. csv_reader = csv.reader(open("./examples/jeopardy/qasheet.csv", 'rt'), delimiter=',')
  19. for row in csv_reader:
  20. global rows
  21. rows.append(row)
  22. for listing in os.listdir(directory):
  23. filename = os.fsdecode(listing)
  24. if filename.endswith(".txt"):
  25. file = open("./examples/jeopardy/results/" + filename, "rt")
  26. global labels
  27. global numEntries
  28. global numbers
  29. labels.append(filename[:-4])
  30. numEntries += 1
  31. i = 1
  32. totalcorrect = 0
  33. for line in file.readlines():
  34. if line.strip() != "------":
  35. print(line)
  36. else:
  37. print("Correct answer: " + rows[i][2] + "\n")
  38. i += 1
  39. print("Did the AI get the question right? (y/n)")
  40. if input() == "y":
  41. totalcorrect += 1
  42. numbers.append(totalcorrect)
  43. if __name__ == '__main__':
  44. calculatecorrect()
  45. pos = list(range(numEntries))
  46. labels.append("Human")
  47. numbers.append(48.11)
  48. bar_chart(numbers, labels, pos)
  49. print(labels)
  50. print(numbers)