Lorsque vous dessinez plusieurs graphiques, l'utilisation de raise () facilite le contrôle.
Puisque plt.subplots ()
crée un tableau bidimensionnel dans ʻaxes, vous devez imbriquer lors du dessin d'un graphe avec
pour boucle, mais si vous en faites un tableau unidimensionnel avec
ravel ()`, l'imbrication n'est pas nécessaire. ..
python
import pandas_datareader.data as web
import datetime
import matplotlib.pyplot as plt
import seaborn as sns
sns.set()
from pandas.plotting import register_matplotlib_converters
register_matplotlib_converters()
dic = {'Unemployment rate':'UNRATE',
'USHY spread': 'BAMLH0A0HYM2',
'CPI':'CPIAUCSL',
'10 year treasury': 'DGS10',
'Federal Funds Rate': 'FEDFUNDS',
'Industrial Production Index':'INDPRO',
'Household Debt to GDP': 'HDTGPDUSQ163N',
'Real GDP': 'A191RL1Q225SBEA',
'WTI oil price': 'WTISPLC',
'VIX': 'VIXCLS',
'S&P500': 'SP500'}
source = 'fred'
start = datetime.datetime(2015, 1, 1)
end = datetime.datetime(2020, 5, 1)
h = ((len(dic)+1)//2)*4
fig, axes = plt.subplots(6,2, figsize = (15,h))
for ax, (ttl, symbol) in zip(axes.ravel(),dic.items()):
dt = web.DataReader(symbol,source, start, end)
ax.plot(dt)
ax.set_title(ttl)
ax.grid(True)
plt.tight_layout()
plt.savefig('FRED',bbox_inches="tight")
Recommended Posts