Para agregar una leyenda a un diagrama matplotlib, simplemente se ejecuta legend().
¿Cómo eliminar una leyenda de una trama?
(Lo más cerca que llegué a esto es correr legend([])para vaciar la leyenda de los datos. Pero eso deja un feo rectángulo blanco en la esquina superior derecha).
                    
                        matplotlib
                                legend
                                
                    
                    
                        Olivier Verdier
fuente
                
                
            fuente

ax.get_legend().remove()solución no funcionó en mi caso, mientras que la segunda solución (legend = ax.legend() ... legend.remove()) funcionó. tal vez porqueaxfue unAxesSubploten mi caso?Si desea trazar un marco de datos de Pandas y desea eliminar la leyenda, agregue leyenda = Ninguno como parámetro al comando de trazado.
fuente
Podrías usar el
set_visiblemétodo de la leyenda :Esto se basa en una respuesta que se me proporcionó en respuesta a una pregunta similar que tuve hace algún tiempo aquí
(Gracias por esa respuesta, Jouni: lo siento, no pude marcar la pregunta como contestada ... ¿tal vez alguien que tenga la autoridad pueda hacerlo por mí?)
fuente
tienes que agregar las siguientes líneas de código:
gca () devuelve el identificador de ejes actual y tiene esa propiedad legend_
fuente
draw()porshow(). ¿O hay una ventaja particular en el usodraw?show()estaría bien si la actualización del gráfico fuera el último comando de un programa.draw()está bien, ya que es el comando general de actualización de gráficos. Por ejemplo, es posible que desee solicitar al usuario alguna entrada en un terminal después de actualizar el gráfico, lo que no se puede hacer con el bloqueoshow().drawes más apropiado (pero siempre he usadoshowpara actualizar mis gráficos ...).Si no está utilizando objetos de trazado de higos y hachas, puede hacerlo así:
fuente
si llamas
pyplotcomopltframeon=Falsees eliminar el borde alrededor de la leyenday '' está pasando la información de que ninguna variable debe estar en la leyenda
fuente
Hice una leyenda agregándola a la figura, no a un eje (matplotlib 2.2.2). Para eliminarlo, configuro el
legendsatributo de la figura en una lista vacía:fuente
Según la información de @naitsirhc, quería encontrar la documentación oficial de la API. Aquí están mis hallazgos y algunos códigos de muestra.
matplotlib.Axesobjeto porseaborn.scatterplot().ax.get_legend()devolverá unamatplotlib.legned.Legendinstancia..remove()función para eliminar la leyenda de tu trama.Si revisa el
matplotlib.legned.Legenddocumento API, no verá la.remove()función.La razón es que el
matplotlib.legned.Legendheredadomatplotlib.artist.Artist. Por lo tanto, cuando llamasax.get_legend().remove()eso básicamente llamamatplotlib.artist.Artist.remove().Al final, incluso podría simplificar el código en dos líneas.
fuente