Me han conspirado mis datos con factorplot en seaborn y obtener facetgrid objeto, pero todavía no pueden entender cómo los siguientes atributos se podría establecer en esa parcela:

  1. Leyenda tamaño: cuando me parcela de muchas variables, que me siento muy pequeñas leyendas, con fuentes pequeñas.
  2. Tamaños de fuente de y y x etiquetas (un problema similar que el anterior)
  • Las respuestas a continuación son correctas y deben ayudar, pero yo diría que suena como que usted está trazado en el IPython notebook y para que el problema no es realmente nada que ver con seaborn, pero que el ordenador portátil se reduzca cifras si terminan más grande que el div que se les asignó. Si usted guardar la figura, todo lo que debe ser el tamaño que usted espera.
  • También si se trazan una gran cantidad de variables en las columnas y no tienen una fila de la variable, puede utilizar col_wrap a «ajustar» las facetas en varias filas, lo que podría ayudar.
InformationsquelleAutor james pardon | 2014-08-15

4 Comentarios

  1. 83

    Puede escalar las fuentes en la llamada a sns.set().

    import numpy as np
    import matplotlib.pyplot as plt
    import seaborn as sns
    x = np.random.normal(size=37)
    y = np.random.lognormal(size=37)
    
    # defaults
    sns.set()
    fig, ax = plt.subplots()
    ax.plot(x, y, marker='s', linestyle='none', label='small')
    ax.legend(loc='upper left', bbox_to_anchor=(0, 1.1))

    ¿Cómo puedo cambiar el tamaño de fuente con seaborn FacetGrid?

    sns.set(font_scale=5)  # crazy big
    fig, ax = plt.subplots()
    ax.plot(x, y, marker='s', linestyle='none', label='big')
    ax.legend(loc='upper left', bbox_to_anchor=(0, 1.3))

    ¿Cómo puedo cambiar el tamaño de fuente con seaborn FacetGrid?

    • El tamaño es relativo a la predeterminada matplotlib tamaño de la fuente. Para mí era mejor cambiar el tamaño de la fuente a la derecha allí con plt.rc() llama en la parte superior de mi script o Jupyter notebook. Consulte stackoverflow.com/questions/3899980/…
  2. 24

    La FacetGrid de la parcela no produce bastante pequeñas etiquetas. Mientras @pablo-h se ha descrito el uso de sns.set como un camino para el cambio de la escala de fuente, puede ser que no sea la solución óptima, ya que cambia la font_scale configuración para todas las parcelas.

    Podría utilizar el seaborn.plotting_context para cambiar la configuración para que solo la gráfica actual:

    with sns.plotting_context(font_scale=1.5):
        sns.factorplot(x, y ...)
  3. 3

    He hecho pequeñas modificaciones a @pablo-H código, de tal manera que usted puede ajustar el tamaño de fuente para los ejes x/y y la leyenda de forma independiente. Espero que ayude:

    import numpy as np
    import matplotlib.pyplot as plt
    import seaborn as sns
    x = np.random.normal(size=37)
    y = np.random.lognormal(size=37)
    
    # defaults                                                                                                         
    sns.set()
    fig, ax = plt.subplots()
    ax.plot(x, y, marker='s', linestyle='none', label='small')
    ax.legend(loc='upper left', fontsize=20,bbox_to_anchor=(0, 1.1))
    ax.set_xlabel('X_axi',fontsize=20);
    ax.set_ylabel('Y_axis',fontsize=20);
    
    plt.show()

    Este es el resultado:

    ¿Cómo puedo cambiar el tamaño de fuente con seaborn FacetGrid?

  4. 1

    De la leyenda, puede utilizar este

    plt.setp(g._legend.get_title(), fontsize=20)

    Donde g es su facetgrid objeto devuelto después de llamar a la función de lo que es.

Dejar respuesta

Please enter your comment!
Please enter your name here