Gráficos de scatter con relplot() —-#
0:00 min | Última modificación: Octubre 13, 2021 | [YouTube]
[1]:
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
[2]:
tips = sns.load_dataset('tips')
tips.head()
[2]:
total_bill | tip | sex | smoker | day | time | size | |
---|---|---|---|---|---|---|---|
0 | 16.99 | 1.01 | Female | No | Sun | Dinner | 2 |
1 | 10.34 | 1.66 | Male | No | Sun | Dinner | 3 |
2 | 21.01 | 3.50 | Male | No | Sun | Dinner | 3 |
3 | 23.68 | 3.31 | Male | No | Sun | Dinner | 2 |
4 | 24.59 | 3.61 | Female | No | Sun | Dinner | 4 |
[3]:
#
# Gráfico básico
#
sns.color_palette("pastel")
# (Figure-level function)
sns.relplot(
x="total_bill",
y="tip",
data=tips,
color='tab:green',
kind='scatter',
)
# (Axes-level function)
sns.rugplot(
data=tips,
x="total_bill",
y="tip",
color='tab:green',
)
plt.show()
[4]:
#
# Separación de categoría por color
# =============================================================================
#
# (Figure-level function)
sns.relplot(
x="total_bill",
y="tip",
hue="smoker",
data=tips,
kind='scatter',
)
# (Axes-level function)
g = sns.rugplot(
data=tips,
x="total_bill",
y="tip",
hue="smoker",
)
g.legend_.remove()
plt.show()
[5]:
#
# Separación de categoría por forma
#
sns.relplot(
x="total_bill",
y="tip",
style="smoker",
data=tips,
kind='scatter',
)
plt.show()
[6]:
#
# Separación de categoría por size
#
sns.relplot(
x="total_bill",
y="tip",
size="smoker",
sizes=(50, 200),
data=tips,
alpha=0.4,
kind='scatter',
)
plt.show()
[7]:
#
# Separación de categoría por gráfica
#
sns.relplot(
x="total_bill",
y="tip",
data=tips,
col='day',
kind='scatter',
)
plt.show()
[8]:
#
# Separación de categoría por gráfica.
# Modificación de la cantidad de columnas por fila y cambio en el orden.
#
sns.relplot(
x="total_bill",
y="tip",
data=tips,
kind='scatter',
col='day',
col_wrap=2,
col_order = [
'Thur',
'Fri',
'Sat',
'Sun',
],
)
plt.show()
[9]:
#
# Separación de variables categoría por fila y columna
#
sns.relplot(
x="total_bill",
y="tip",
data=tips,
col='day',
row='time',
kind='scatter',
)
plt.show()