Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

608
Vistas
¿Cómo configuro el título de la figura y el tamaño de fuente de las etiquetas de los ejes en Matplotlib?

Estoy creando una figura en Matplotlib como esta:

 from matplotlib import pyplot as plt fig = plt.figure() plt.plot(data) fig.suptitle('test title') plt.xlabel('xlabel') plt.ylabel('ylabel') fig.savefig('test.jpg')

Quiero especificar tamaños de fuente para el título de la figura y las etiquetas de los ejes. Necesito que los tres tengan diferentes tamaños de fuente, por lo que establecer un tamaño de fuente global ( mpl.rcParams['font.size']=x ) no es lo que quiero. ¿Cómo configuro los tamaños de fuente para el título de la figura y las etiquetas de los ejes individualmente?

over 4 years ago · Santiago Trujillo
10 Respuestas
Responde la pregunta

0

Si está más acostumbrado a usar objetos ax para hacer su trazado, puede encontrar ax.xaxis.label.set_size() más fácil de recordar, o al menos más fácil de encontrar usando la pestaña en una terminal ipython. Parece que necesita una operación de redibujado después para ver el efecto. Por ejemplo:

 import matplotlib.pyplot as plt # set up a plot with dummy data fig, ax = plt.subplots() x = [0, 1, 2] y = [0, 3, 9] ax.plot(x,y) # title and labels, setting initial sizes fig.suptitle('test title', fontsize=12) ax.set_xlabel('xlabel', fontsize=10) ax.set_ylabel('ylabel', fontsize='medium') # relative to plt.rcParams['font.size'] # setting label sizes after creation ax.xaxis.label.set_size(20) plt.draw()

No conozco una forma similar de establecer el tamaño de los subtítulos después de crearlos.

over 4 years ago · Santiago Trujillo Denunciar

0

También puede hacer esto globalmente a través de un diccionario rcParams:

 import matplotlib.pylab as pylab params = {'legend.fontsize': 'x-large', 'figure.figsize': (15, 5), 'axes.labelsize': 'x-large', 'axes.titlesize':'x-large', 'xtick.labelsize':'x-large', 'ytick.labelsize':'x-large'} pylab.rcParams.update(params)
over 4 years ago · Santiago Trujillo Denunciar

0

Las funciones que tratan con texto como label , title , etc. aceptan los mismos parámetros que matplotlib.text.Text . Para el tamaño de fuente, puede usar size/fontsize de fuente:

 from matplotlib import pyplot as plt fig = plt.figure() plt.plot(data) fig.suptitle('test title', fontsize=20) plt.xlabel('xlabel', fontsize=18) plt.ylabel('ylabel', fontsize=16) fig.savefig('test.jpg')

Para configurar globalmente los tamaños de title y label , mpl.rcParams contiene axes.titlesize y axes.labelsize . (De la página):

 axes.titlesize : large # fontsize of the axes title axes.labelsize : medium # fontsize of the x any y labels

(Hasta donde puedo ver, no hay forma de establecer los tamaños de etiqueta x e y por separado).

Y veo que axes.titlesize no afecta al suptitle . Supongo que debes configurarlo manualmente.

over 4 years ago · Santiago Trujillo Denunciar

0

7 (mejor solución)

 from numpy import* import matplotlib.pyplot as plt X = linspace(-pi, pi, 1000) class Crtaj: def nacrtaj(self,x,y): self.x=x self.y=y return plt.plot (x,y,"om") def oznaci(self): return plt.xlabel("x-os"), plt.ylabel("y-os"), plt.grid(b=True)

6 (solución ligeramente peor)

 from numpy import* M = array([[3,2,3],[1,2,6]]) class AriSred(object): def __init__(self,m): self.m=m def srednja(self): redovi = len(M) stupci = len (M[0]) lista=[] a=0 suma=0 while a<stupci: for i in range (0,redovi): suma=suma+ M[i,a] lista.append(suma) a=a+1 suma=0 b=array(lista) b=b/redovi return b OBJ = AriSred(M) sr = OBJ.srednja()
over 4 years ago · Santiago Trujillo Denunciar

0

Una solución alternativa para cambiar el tamaño de fuente es cambiar el relleno. Cuando Python guarda su PNG, puede cambiar el diseño usando el cuadro de diálogo que se abre. El espacio entre los ejes, el relleno si lo desea, puede modificarse en esta etapa.

over 4 years ago · Santiago Trujillo Denunciar

0

Coloque right_ax antes set_ylabel()

ax.right_ax.set_ylabel('AB scale')

over 4 years ago · Santiago Trujillo Denunciar

0

Para modificar solo la fuente del título (y no la fuente del eje) usé esto:

 import matplotlib.pyplot as plt fig = plt.Figure() ax = fig.add_subplot(111) ax.set_title('My Title', fontdict={'fontsize': 8, 'fontweight': 'medium'})

El fontdict acepta todos los kwargs de matplotlib.text.Text .

over 4 years ago · Santiago Trujillo Denunciar

0

Otros han proporcionado respuestas sobre cómo cambiar el tamaño del título, pero en cuanto al tamaño de la etiqueta de los ejes, también puede usar el método set_tick_params .

Por ejemplo, para hacer que el tamaño de la etiqueta del tick del eje x sea pequeño:

 ax.xaxis.set_tick_params(labelsize='small')

o, para hacer que la etiqueta de marca del eje y sea grande:

 ax.yaxis.set_tick_params(labelsize='large')

También puede ingresar el tamaño de la labelsize como un flotante, o cualquiera de las siguientes opciones de cadena: 'xx-pequeño', 'x-pequeño', 'pequeño', 'mediano', 'grande', 'x-grande' o ' xx-grande'.

over 4 years ago · Santiago Trujillo Denunciar

0

bibliotecas

importar numpy como np

importar matplotlib.pyplot como plt

crear conjunto de datos

altura = [3, 12, 5, 18, 45]

barras = ('A', 'B', 'C', 'D', 'E')

x_pos = np.arange(len(barras))

Crea barras y elige el color.

plt.bar(x_pos, altura, color = (0.5,0.1,0.5,0.6))

Agregar títulos y nombres de ejes

plt.title('Mi título')

plt.xlabel('categorías')

plt.ylabel('valores')

Crear nombres en el eje x

plt.xticks(x_pos, barras)

Mostrar trama

plt.mostrar()

over 4 years ago · Santiago Trujillo Denunciar

0

Si no está creando explícitamente objetos de figura y eje, puede establecer el tamaño de fuente del título cuando crea el título con el argumento fontdict .

Puede configurar los tamaños de fuente de las etiquetas x e y por separado cuando crea las etiquetas x e y con el argumento fontsize de fuente.

Por ejemplo:

 plt.title('Car Prices are Increasing', fontdict={'fontsize':20}) plt.xlabel('Year', fontsize=18) plt.ylabel('Price', fontsize=16)

¡También funciona con la trama de Seaborn y Pandas!

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda