import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
from dateutil.parser import parse
28 Múltiples gráficas con patrones complejos
En esta sesión, se explorará la herramienta GridSpec, la cual no solo nos permite crear gráficos complejos, sino que también nos otorga un control sin igual sobre la disposición y el tamaño de los subplots dentro de una figura. En conjunto, aprenderemos cómo esta herramienta puede mejorar nuestras composiciones gráficas, permitiéndonos diseñar visualizaciones que se adapten perfectamente a nuestras necesidades.
= "../data/Cuernavaca_Enero_comas.csv"
f = pd.read_csv(f,index_col=0,parse_dates=True)
cuerna cuerna.index
DatetimeIndex(['2012-01-01 00:00:00', '2012-01-01 01:00:00',
'2012-01-01 02:00:00', '2012-01-01 03:00:00',
'2012-01-01 04:00:00', '2012-01-01 05:00:00',
'2012-01-01 06:00:00', '2012-01-01 07:00:00',
'2012-01-01 08:00:00', '2012-01-01 09:00:00',
...
'2012-01-31 14:00:00', '2012-01-31 15:00:00',
'2012-01-31 16:00:00', '2012-01-31 17:00:00',
'2012-01-31 18:00:00', '2012-01-31 19:00:00',
'2012-01-31 20:00:00', '2012-01-31 21:00:00',
'2012-01-31 22:00:00', '2012-01-31 23:00:00'],
dtype='datetime64[ns]', name='tiempo', length=744, freq=None)
cuerna.columns
Index(['To', 'RH', 'P', 'Ws', 'Wd', 'Ig', 'Ib', 'Id'], dtype='object')
= plt.figure(figsize=(10,4))
fig = gridspec.GridSpec(2, 2)
gs
= fig.add_subplot(gs[0,:])
ax1 = fig.add_subplot(gs[1,:1])
ax2 = fig.add_subplot(gs[1,1:])
ax3
ax1.plot(cuerna.To)
ax2.scatter(cuerna.To,cuerna.RH)
ax3.plot(cuerna.Ig)
ax3.plot(cuerna.Id)
ax3.plot(cuerna.Ib)= parse("2012-01-01")
f1 = f1 + pd.Timedelta("1D")
f2
ax3.set_xlim(f1,f2)