From a2edf054114a09b7d8fb6be3c1cb5e1a560b8d40 Mon Sep 17 00:00:00 2001 From: Hannes Kuchelmeister Date: Tue, 4 May 2021 11:19:05 +0200 Subject: [PATCH] refactor party plotting --- VotingAnalysis.py | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/VotingAnalysis.py b/VotingAnalysis.py index 61e29b1..20658bc 100644 --- a/VotingAnalysis.py +++ b/VotingAnalysis.py @@ -172,6 +172,24 @@ def plot_mps(fig, ax, x, y, labels, colors, cmap = plt.cm.RdYlGn): fig.canvas.mpl_connect("motion_notify_event", hover) #plt.show() + +def plot_parties(xs, ys, party_ids, party_index_mapping): + party_count = np.zeros(party_index_mapping.shape[0]) + party_xs = np.zeros(party_index_mapping.shape[0]) + party_ys = np.zeros(party_index_mapping.shape[0]) + for x, y, party_id in zip(xs, ys, party_ids): + party_xs[party_id] += x + party_ys[party_id] += y + party_count[party_id] += 1 + + party_xs /= party_count + party_ys /= party_count + plt.figure() + plt.scatter(party_xs, party_ys) + # plotting labels + offset = 0.01 + for x,y, party in zip(party_xs, party_ys, party_index_mapping): + plt.text(x + offset, y + offset, party) #Simple SOFM for German plt.style.use('ggplot') @@ -224,25 +242,8 @@ party_index_mapping, party_ids = np.unique(data[:,1], return_inverse=True) plot_mps(fig, ax, xs_disp, ys_disp, data[:,0] + " (" + data[:,1] + ")", party_ids) plt.show() -party_count = np.zeros(party_index_mapping.shape[0]) -party_xs = np.zeros(party_index_mapping.shape[0]) -party_ys = np.zeros(party_index_mapping.shape[0]) -for x, y, party_id in zip(xs, ys, party_ids): - party_xs[party_id] += x - party_ys[party_id] += y - party_count[party_id] += 1 - -party_xs /= party_count -party_ys /= party_count - -plt.figure() -plt.scatter(party_xs, party_ys) - -# plotting labels -offset = 0.01 -for x,y, party in zip(party_xs, party_ys, party_index_mapping): - plt.text(x + offset, y + offset, party) - +# plotting parties +plot_parties(xs, ys, party_ids, party_index_mapping) plt.show() #Simple SOFM for UK