Tuve un problema y es que al establecer el font=“Verdana” me salía un error de que la fuente no se encontraba. Esto lo solucioné de la siguiente manera:
buscan el archivo de la fuente que quieres usar. Yo la saqué de C:\Windows\Fonts en mi computadora, pero pueden encontrarlo en internet. Lo importante es que el archivo termine en “.ttf”.
Este archivo lo subí a Deepnote (utilice verdana porque es el que se utiliza en la clase, pero sirve con cualquier fuente).
Toca importar el font manager de matplot.
from matplotlib.font_manager import fontManager,FontProperties
Con el siguiente codigo pueden instalar la fuente con fontManager:
path = "/work/verdana.ttf" #el path se copia del archivo que se subió a deepnote.
fontManager.addfont(path)
prop=FontProperties(fname=path)
sns.set(font=prop.get_name())
Por último solo es necesario llamar la fuente en el set como se hizo en la clase y listo 😄
Por si alguien tuvo problemas al querer usar seaborn por que esta usando un notebook con un editor de código local,para instalar la librería deben usar el siguiente comando en la consola de comandos.
y por cierto, si ustedes ponen cualquier cosa en palette, por ejemplo:
palette = "caca_mocos_lalalalal"
les saltara un error, peeeero el error le muestra muchas opciones que si se pueden usar como ejemplo
A el día de hoy la función SET esta obsoleta, ahora se usa set\_theme(),
<https://seaborn.pydata.org/generated/seaborn.set_theme.html#seaborn-set-theme>
Solución a problema de fuente en VS CODE:
Si tienes fuentes en Windows y quieres traer a un entorno de WSL
Primero copia las fuentes de la ruta de Windows:
C:\Windows\Fonts
Despues pega las fuentes en el siguiente directorio:
Si tienes Linux: con Miniforge:
\home\tu\_usuario\miniforge3\lib\python3.12\site-packages\matplotlib\mpldata\fonts\ttf
Si tienes Linux con anaconda3:
/home/\*\*\*/anaconda3/pkgs/matplotlib-base-3.1.3-py37hef1b27d\_0/lib/python3.7/sitepackages/matplotlib/mpl-data/fonts/ttf/
Y corre este comando en terminal rm ~/.cache/matplotlib -rf
NOTA: Es importante que no estes ejecutando el VS CODE.
setSet es un método de Seaborn que permite configurar el estilo, fuente y color de las gráficas.
Cómo usar Set
Escribe el siguiente código:
[2]
0 s
import matplotlib.pyplot as plt
import seaborn as sns
[4]
1 s
sns.barplot(x=["a","b","c","d","e","f"],y=[1,2,3,4,5,6])
plt.show()
#atraves de searbon y la funcion podemos crear esta grafica. como seaborn esta montado en matplotlibe#por eso al ingresar el comando afacta directamente a seaborn
[8]
sns.set(style="whitegrid", palette="dark")
sns.barplot(x=["a","b","c","d","e","f"],y=[1,2,3,4,5,6])
plt.show()
#con set podemos hacer diferentes estilos a mis graficas #con la funcion(palette), podemos hacer y lo que le difinamos podemos hacerle cambios a las graficas#con la funcion palette me solo cambia el color de las barras y no del fundo de la grafica
[10]
sns.set(style="whitegrid", palette="dark",font="Verdana",font_scale=1)
sns.barplot(x=["a","b","c","d","e","f"],y=[1,2,3,4,5,6])
plt.show()
#con la funcion (verdana) puedo saber la fuente estoy utilizando#puedo hacer todos estos cambios a mi grafica con solo definir los parametros en set
[7]
sns.set_theme(style="white", palette=None)
sns.barplot(x=["a","b","c","d","e","f"],y=[1,2,3,4,5,6])
plt.show()
#Pase Nonepara conservar los valores actuales para un conjunto dado de parámetros:
[12]
0 s
custom_params = {"axes.spines.right": False, "axes.spines.top": False}
sns.set_theme(style="ticks", rc=custom_params)
sns.barplot(x=["a","b","c","d","e","f"],y=[1,2,3,4,5,6])
plt.show()
#También puede anular cualquier parámetro de seaborn o definir parámetros adicionales #que sean parte del sistema matplotlib rc pero que no estén incluidos en los temas de seaborn:#
1° subir el archivo Verdana.ttf (yo antes de arrastrarlo lo copié en una carpeta aparte porque desde la carpeta Fuentes no arrastra):
2° Después escribí el siguiente código:
from matplotlib.font_manager import fontManager,FontProperties
path = "/content/verdana.ttf" #el path se copia del archivo que se subió a deepnote.
fontManager.addfont(path)
prop=FontProperties(fname=path)
sns.set(font=prop.get_name())
3° Ya pueden usar la fuente Verdana como en la clase:
sns.set(style='dark', palette='dark', font="Verdana", font_scale=0.8) # cambiando fuente (font) y tamaño de la fuente (font_scale)
sns.barplot(x=['A','B','C'],y=[1,3,2])
plt.show()
Creo que falta mencionar la parte donde el profe diga como se resetean los valores al default una vez que hagamos modificaciones en set. También sería bueno mecionar como se puede modificar el theme de manera temporal.
Es increible la forma en que se agregan los estilos en seaborn de una manera sencilla sin poner tanto codigo como matplotlib. Esto si hace el desarrollo sencillo.
anagrams: Conjunto de palabras que pueden reorganizarse para formar otras palabras (ej. “silent” y “listen”).
anscombe: Cuatro conjuntos de datos que comparten la misma dispersión pero tienen diferentes relaciones subyacentes entre las variables.
brain_networks: Conectividad funcional entre regiones del cerebro humano.
exercise: Datos de actividad física de 101 adultos durante una semana.
geyser: Duración entre erupciones del Old Faithful Geyser en el Parque Nacional de Yellowstone.
iris: Características de las flores de iris de tres especies diferentes.
penguins: Características físicas y de comportamiento de tres especies de pingüinos en la Isla Palmer.
planets: Características orbitales y físicas de planetas extrasolares.
Datos económicos y financieros:
diamonds: Características y precios de diamantes.
dowjones: Índices diarios del Dow Jones Industrial Average.
healthexp: Gastos en salud per cápita por estado de EE. UU.
mpg: Consumo de combustible y otras características de automóviles.
taxis: Viajes en taxi en la ciudad de Nueva York.
tips: Propinas dejadas en un restaurante y otra información sobre la comida.
Datos estadísticos y de simulación:
attention: Datos simulados sobre la atención visual humana.
dots: Distribución espacial de puntos generados al azar.
flights: Información sobre vuelos entre 33 ciudades de EE. UU.
glue: Conjuntos de datos de texto para tareas de procesamiento de lenguaje natural.
seaice: Concentración de hielo marino en el Ártico.
Recuerda:
Esta es solo una breve descripción, cada dataset tiene detalles y características más específicas.
Consulta la documentación de Seaborn para obtener más información sobre cada dataset.
import seaborn as sns
import matplotlib.pyplot as plt
sns.barplot(x=['A','B','C'],y=[1,3,2]);
sns.set(style='dark',palette='dark',font="Verdana",font_scale=1) # Set para seleccionar los parámetros que quiero para el gráfico
sns.barplot(x=['A','B','C'],y=[1,3,2]);
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?