Las funciones de seaborn devuelven unos ejes de matplotlib (funciones a nivel de ejes como scatterplot o boxplot) o una cuadrícula de ejes (funciones a nivel de figura como relplot o displot). En ambos casos los ejes se pueden personalizar con métodos de seaborn y de matplotlib, como se muestra en este tutorial.
Por defecto seaborn utiliza los nombres de las columnas como etiquetas de los ejes. Cámbialas con ax.set (o con ax.set_xlabel y ax.set_ylabel).
import seaborn as sns
import matplotlib.pyplot as plt
iris = sns.load_dataset("iris")
ax = sns.scatterplot(data = iris, x = "sepal_length", y = "petal_length")
ax.set(xlabel = "Longitud del sépalo (cm)", ylabel = "Longitud del pétalo (cm)")
# plt.show()

Etiquetas en funciones a nivel de figura
Las funciones a nivel de figura devuelven un FacetGrid. Utiliza su método set_axis_labels para cambiar las etiquetas de todos los subplots a la vez.
import seaborn as sns
import matplotlib.pyplot as plt
iris = sns.load_dataset("iris")
g = sns.relplot(data = iris, x = "sepal_length", y = "petal_length", height = 4)
g.set_axis_labels("Longitud del sépalo (cm)", "Longitud del pétalo (cm)")
# plt.show()


Establece los límites de los ejes con ax.set(xlim = ..., ylim = ...) o con set_xlim y set_ylim.
import seaborn as sns
import matplotlib.pyplot as plt
iris = sns.load_dataset("iris")
ax = sns.scatterplot(data = iris, x = "sepal_length", y = "petal_length")
ax.set(xlim = (4, 8), ylim = (0, 8))
# plt.show()

Cuando las categorías tienen nombres largos las etiquetas del eje X se solapan. Rótalas con tick_params o con plt.xticks(rotation = 45). En las funciones a nivel de figura utiliza g.tick_params(axis = "x", rotation = 45).
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
df = pd.DataFrame({"country": ["Estados Unidos", "Reino Unido", "Alemania", "Francia", "España"],
"value": [32, 21, 25, 18, 15]})
ax = sns.barplot(data = df, x = "country", y = "value", color = "#4C72B0")
ax.tick_params(axis = "x", rotation = 45, labelsize = 12)
# plt.show()

Gráficos horizontales
Una alternativa a rotar las etiquetas es intercambiar las variables para crear un gráfico horizontal, en el que las etiquetas largas tienen mucho más espacio.
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
df = pd.DataFrame({"country": ["Estados Unidos", "Reino Unido", "Alemania", "Francia", "España"],
"value": [32, 21, 25, 18, 15]})
sns.barplot(data = df, x = "value", y = "country")
# plt.show()

Cambia la posición de los ticks con set_xticks y set_yticks y da formato a los números con los formateadores de matplotlib.ticker, por ejemplo para mostrar moneda o porcentajes.
import seaborn as sns
import matplotlib.pyplot as plt
from matplotlib.ticker import StrMethodFormatter
diamonds = sns.load_dataset("diamonds")
ax = sns.histplot(data = diamonds, x = "price", binrange = (0, 10000))
ax.set_xticks([0, 2500, 5000, 7500, 10000])
ax.xaxis.set_major_formatter(StrMethodFormatter("${x:,.0f}"))
# plt.show()

Varias funciones de seaborn, como histplot, kdeplot o boxplot, tienen el argumento log_scale. Para el resto utiliza ax.set_xscale("log") o ax.set_yscale("log").
import seaborn as sns
import matplotlib.pyplot as plt
diamonds = sns.load_dataset("diamonds")
sns.histplot(data = diamonds, x = "price", log_scale = True)
# plt.show()

despine
sns.despine elimina los bordes superior y derecho. Utiliza left = True o bottom = True para eliminar los demás y offset para separar los ejes de los datos.
import seaborn as sns
import matplotlib.pyplot as plt
iris = sns.load_dataset("iris")
sns.boxplot(data = iris, x = "species", y = "sepal_width")
sns.despine(offset = 10, trim = True)
# plt.show()

Las funciones a nivel de figura llaman a despine automáticamente. Consulta también cómo personalizar el grid, los títulos o el tema de los gráficos de seaborn.
También te puede interesar