Graficos directos desde Pandas
Pandas tiene metodos de graficacion integrados que usan Matplotlib por debajo.
Sintaxis rapida
import pandas as pd
import matplotlib.pyplot as plt
df = pd.DataFrame({
'mes': ['Ene', 'Feb', 'Mar', 'Abr', 'May'],
'ventas': [100, 120, 90, 140, 110],
'gastos': [80, 90, 85, 95, 88]
})
# Grafico de lineas
df.plot(x='mes', y='ventas')
# Multiples lineas
df.plot(x='mes', y=['ventas', 'gastos'])
# Barras
df.plot(x='mes', y='ventas', kind='bar')
# Area
df.plot(x='mes', y=['ventas', 'gastos'], kind='area', alpha=0.5)
# Pie
df.set_index('mes')['ventas'].plot(kind='pie', autopct='%1.1f%%')
Histograma de columna
df['ventas'].hist(bins=10)
plt.show()
# O con plot
df['ventas'].plot(kind='hist', bins=10)
Box plot
df[['ventas', 'gastos']].plot(kind='box')
plt.show()
Scatter desde DataFrame
df.plot(x='ventas', y='gastos', kind='scatter')
plt.show()
Personalizacion
df.plot(
x='mes',
y='ventas',
kind='bar',
figsize=(10, 6),
color='steelblue',
title='Ventas Mensuales',
xlabel='Mes',
ylabel='Ventas ($)',
legend=True,
grid=True
)
plt.tight_layout()
plt.show()
Guardando graficos
# Con matplotlib
plt.savefig('grafico.png', dpi=300, bbox_inches='tight')
plt.savefig('grafico.pdf')
plt.savefig('grafico.svg')
# Formatos soportados: png, pdf, svg, jpg