Как построить график временных рядов для каждой партии и общее количество голосов, которые они получили каждый год - PullRequest
0 голосов
/ 22 января 2019

enter image description here Вот мой набор данных

Новичок здесь. Я хочу изобразить общее количество голосов, которые каждая партия получила за каждый год, я думаю, что гистограмма будет хорошей идеей, но яЯ не понимаю, как это сделать.

Я хочу сделать это с заговором.Вывод должен быть примерно таким.enter image description here

1 Ответ

0 голосов
/ 22 января 2019

Вот рабочий пример для вашего случая использования

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

data = {'Partyname': ['Independents', 'INC','Independents','Independents','Independents'], 'Year': [1977, 1977,1980,1980,1980], "totPoll":[25168,35400,109,125,405]}

df = pd.DataFrame(data)
grpByParty = df.groupby(['Partyname'])
sumVotes = grpByParty['totPoll'].agg(np.sum)

y_values = sumVotes.keys().tolist()
y_pos = np.arange(len(y_values))

votes = sumVotes.tolist()
plt.bar(y_pos, votes, align='center', alpha=0.5)
plt.xticks(y_pos, y_values)
plt.ylabel('votes')
plt.title('party wise votes ')

plt.show()

Подход, который здесь используется

  • Сгруппируйте данные по партии.
  • Получить суммуот общего числа голосов в партии, используя агрегат.
  • Взять x любые координаты y в списке.
  • Построить диаграмму, используя matplotlib.pyplot

enter image description here

Вывод будет выглядеть следующим образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...