import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv('C:\Kodilla\learning-git-13\movies.csv')
df['release_date'] = pd.to_datetime(df['release_date'])
df["year"] = df.release_date.dt.year
zx=df.groupby("year").agg({"revenue": np.mean, "budget": np.mean})
chart=zx.loc['2010-01-01':'2017-12-31', ['revenue', 'budget']]
z=np.arange(3)
def million(x, pos):
return '{:2.1f}M'.format(z*1e-6)
fig = plt.figure()
axes = fig.add_axes([0,0,1,1])
axes.plot(df['release_date'],chart['budget'],label='budget',color = 'red')
axes.bar(df['release_date'],chart['revenue'],label='revenue')
axes.legend(loc=(1.05,0.9))
axes.set_title('Średni przychód i budżet filmu w latach 2010-2016')
formatter = plt.FuncFormatter(million)
axes.yaxis.set_major_formatter(formatter)
plt.xlabel('Lata') # dodajemy opis osi X
plt.ylabel('Wartość') # dodajemy opis osi Y
plt.title('Średni przychód i budzet filmów w latach 2010-2016') # dodajemy tytuł wykresu
plt.show()
pobieram dane z csv nastepnie grupuje to na roczne budzety i przychody potem robie przedział od 2010 do 2016 roku i jak robie by na jednym wykresie był wykres kolumnowy dla revenue i liniowy dla plot to mi nie działa i trochę nie wiem jak to poprawić ?
axes.plot(df['release_date'], chart['budget'],label='budget',color = 'red')
axes.bar(df['release_date'], chart['revenue'],label='revenue')
Z tym powyżej jest coś nie tak , ma być jeden wykres i dane dla budzetu jako wykres liniowy i dane dla przychodów na kolumnowym