import matplotlib.pyplot as plt
from matplotlib import cm
x = [18, 16, 17, 12, 16, 17, 20, 14, 11, 15, 10]
y = [2, 2, 1, 3, 1, 2, 3, 3, -3, 3, 2]
s = ["Nazi Germany", "Fascist Italy", "Soviet Union\nCommunism", "Russia", "China\nCommunism", "Modern China", "North Korea", "Iran", "Gulf States", "ISIL", "Bonpartism"]
plt.rcParams['figure.facecolor'] = 'white'
plt.rcParams["figure.figsize"] = (16,10)
fig, ax = plt.subplots()
ax.scatter(x, y)
viridis = cm.get_cmap('viridis', 8)
for i in range(-3, 4):
plt.axhspan(i-0.5, i+0.5, facecolor=viridis(-i+4), alpha=0.7)
for i, txt in enumerate(s):
ax.annotate(txt, (x[i]+0.1, y[i]))
ax.set_title("Fascism Index vs Hostility Score")
ax.set_xlabel("Fascism Index")
ax.set_ylabel("Hostility Score")
fig.savefig("fascism_index.png")