• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

586
Vistas
"UserWarning: Matplotlib actualmente está usando agg, que es un backend que no es GUI, por lo que no puede mostrar la figura". al trazar la figura con pyplot en Pycharm

Estoy tratando de trazar un gráfico simple usando pyplot, por ejemplo:

 import matplotlib.pyplot as plt plt.plot([1,2,3],[5,7,4]) plt.show()

pero no me aparece la figura y me sale el siguiente mensaje:

 UserWarning: Matplotlib is currently using agg, which is a non-GUI backend, so cannot show the figure.

Vi en varios lugares que uno tenía que cambiar la configuración de matplotlib usando lo siguiente:

 import matplotlib matplotlib.use('TkAgg') import matplotlib.pyplot as plt

Hice esto, pero luego recibí un mensaje de error porque no puede encontrar un módulo:

 ModuleNotFoundError: No module named 'tkinter'

Luego, intenté instalar "tkinter" usando pip install tkinter (dentro del entorno virtual), pero no lo encuentra:

 Collecting tkinter Could not find a version that satisfies the requirement tkinter (from versions: ) No matching distribution found for tkinter

También debo mencionar que estoy ejecutando todo esto en Pycharm Community Edition IDE usando un entorno virtual, y que mi sistema operativo es Linux/Ubuntu 18.04.

Me gustaria saber como puedo solucionar este problema para poder visualizar la grafica.

about 3 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Solución 1: es instalar el backend GUI tk

Encontré una solución a mi problema (gracias a la ayuda de ImportanceOfBeingErnest ).

Todo lo que tenía que hacer era instalar tkinter a través de la terminal bash de Linux usando el siguiente comando:

 sudo apt-get install python3-tk

en lugar de instalarlo con pip o directamente en el entorno virtual en Pycharm.

Solución 2: instale cualquiera de los backends de GUI compatibles matplotlib

  • la solución 1 funciona bien porque obtienes un backend GUI... en este caso, el TkAgg
  • sin embargo, también puede solucionar el problema instalando cualquiera de los backends de GUI de matplolib como Qt5Agg , GTKAgg , Qt4Agg , etc.
    • por ejemplo, pip install pyqt5 también solucionará el problema

NOTA:

  • por lo general, este error aparece cuando pip instala matplotlib y está tratando de mostrar un gráfico en una ventana de GUI y no tiene un módulo de python para la visualización de GUI.
  • Los autores de matplotlib hicieron que los departamentos de software de pypi no dependieran de ningún backend de GUI porque algunas personas necesitan matplotlib sin ningún backend de GUI.
about 3 years ago · Santiago Trujillo Denunciar

0

En mi caso, el mensaje de error implicaba que estaba trabajando en una consola sin periféricos. Así que plt.show() no pudo funcionar. Lo que funcionó fue llamar a plt.savefig :

 import matplotlib.pyplot as plt plt.plot([1, 2, 3], [5, 7, 4]) plt.savefig("mygraph.png")

Encontré la respuesta en un repositorio de github .

about 3 years ago · Santiago Trujillo Denunciar

0

Si usa Arch Linux (distribuciones como Manjaro o Antegros ) simplemente escriba:

 sudo pacman -S tk

¡Y todo funcionará perfectamente!

about 3 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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda