#!/usr/bin/python3 -u

# --------------------------------------------------------------

# Please adjust following values

text_file = "output.txt"  # this file contains lines of the form "Pseudo-Immortal: \((.+),(.+)\)"

# --------------------------------------------------------------

# Don't edit after this line

import matplotlib.pyplot as plt # requires "python3 -m pip install matplotlib"

fig = plt.figure()
ax = fig.add_subplot(111)

ax.set_xlabel('Base (b)')
ax.set_ylabel('Power (p)')

import re
regex = re.compile("Pseudo-Immortal: \\((.+),(.+)\\)")
regex2 = re.compile("Not pseudo-Immortal: \\((.+),(.+)\\)")
with open(text_file) as f:
    for line in f:
        result = regex.search(line)
        if result:
            b = result.group(1)
            p = result.group(2)
            xs = b
            ys = p
            #c = "#%02X%02X%02X" % (math.floor(255*((b-minbase)/(maxbase-minbase+1))), math.floor(255*((p-minpower)/(maxpower-minpower+1))), 0)
            c = "#dd0000"
            m = 'o' # filled_markers = ('o', 'v', '^', '<', '>', '8', 's', 'p', '*', 'h', 'H', 'D', 'd', 'P', 'X')
            ax.scatter(xs, ys, s=10, c=c, marker=m)
        result = regex2.search(line)
        if result:
            b = result.group(1)
            p = result.group(2)
            xs = b
            ys = p
            #c = "#%02X%02X%02X" % (math.floor(255*((b-minbase)/(maxbase-minbase+1))), math.floor(255*((p-minpower)/(maxpower-minpower+1))), 0)
            c = "#dddddd"
            m = 'o' # filled_markers = ('o', 'v', '^', '<', '>', '8', 's', 'p', '*', 'h', 'H', 'D', 'd', 'P', 'X')
            ax.scatter(xs, ys, s=10, c=c, marker=m)

for label in ax.yaxis.get_ticklabels():
	label.set_visible(False)
for label in ax.yaxis.get_ticklabels()[::2]:
	label.set_visible(True)

for label in ax.xaxis.get_ticklabels():
	label.set_visible(False)
for label in ax.xaxis.get_ticklabels()[::2]:
	label.set_visible(True)

plt.show()

# --------------------------------------------------------------
