Skip to content

Cómo solucionar el error "No Module Named Matplotlib" en Python

ModuleNotFoundError: No module named 'matplotlib' es un error común que enfrentan los desarrolladores de Python al trabajar con visualización de datos. Significa que Python no puede localizar la librería Matplotlib en tu entorno (¿Facing 'No Module Named Matplotlib' Error? Aquí tienes la solución – Kanaries (opens in a new tab)). La buena noticia es que este error generalmente es sencillo de resolver. En esta guía, explicaremos todas las causas posibles del error y pasaremos por soluciones paso a paso para cada una.

¡Si eres principiante o solo estás solucionando problemas en tu entorno, no te preocupes! Esta guía está escrita con un tono amistoso y útil, y te ayudará a poner en marcha Matplotlib. ¡Vamos a ello!

Entendiendo el error

Cuando ves ModuleNotFoundError: No module named 'matplotlib', Python te indica que la paquete matplotlib no está disponible en la ruta de búsqueda del intérprete actual. Esto puede suceder por varias razones:

  • Matplotlib no está instalado: La librería simplemente no está presente en tu entorno.
  • Múltiples versiones o entornos de Python: Quizás tienes Matplotlib instalado en un intérprete de Python (o entorno virtual) diferente al que estás usando para ejecutar tu código (¿Cómo solucionar: No module named matplotlib? (opens in a new tab)).
  • Llamada incorrecta al script (problemas con Hashbang): Ejecutar un script directamente (con un hashbang #!) puede invocar una versión distinta de Python a la que esperas.
  • Variables de entorno incorrectas o rutas de Python mal configuradas: Python puede estar buscando en directorios equivocados para las librerías.
  • Instalación corrupta o incompleta: La instalación de Matplotlib podría estar dañada o incompleta.
  • Entorno virtual no activado: Si usas virtualenv o Conda, puede que no esté activado, por lo que Matplotlib no estará disponible.
  • Mala configuración en IDE o Jupyter: Tu IDE (PyCharm, VS Code, etc.) o Notebook puede estar usando un intérprete o núcleo diferente que no tiene Matplotlib.
  • Errores tipográficos o casing en la importación: Una mala escritura o uso incorrecto en mayúsculas/minúsculas puede causar fallos.
  • Conflictos de nombres: Un archivo o directorio llamado matplotlib en tu proyecto puede estar ocultando la librería original.

Resumen rápido: causas y soluciones

CausaSolución
Matplotlib no instaladoInstala con pip install matplotlib o conda.
Múltiples versiones/entornos de PythonUsa el intérprete correcto; instala en ese entorno con python -m pip install ....
Hashbang incorrecto (usa otra versión de Python)Corrige el #! del script o ejecútalo con python3 script.py.
Variables de entorno o rutas de Python mal configuradasVerifica sys.path; ajusta PYTHONPATH o reinstala correctamente.
Instalación corrupta o incompletaDesinstala y vuelve a instalar Matplotlib.
Entorno virtual no activadoActiva el entorno virtual antes de usarlo y instala allí.
IDE usando intérprete equivocadoConfigura el IDE para usar el intérprete correcto con Matplotlib.
Kernel de Jupyter mal configuradoSelecciona o instala el kernel correcto con los paquetes necesarios.
Error tipográfico en importaciónUsa import matplotlib (todo en minúsculas).
Conflicto de nombres (archivo propio con nombre matplotlib)Cambia el nombre de tu archivo o carpeta.

En las siguientes secciones abordaremos cada causa con explicaciones claras y soluciones concretas.


Caso 1: Matplotlib no está instalado

Una de las razones principales del error "No Module Named Matplotlib" es que no tienes instalada la librería en tu entorno actual. Si no está instalada, Python no puede encontrarla, y es así de simple.

Solución: Instala Matplotlib

Para instalar Matplotlib, usa el gestor de paquetes pip (o conda si usas Anaconda).

  • Con pip: Abre tu terminal o símbolo del sistema y ejecuta:

    pip install matplotlib

    Si tienes varias versiones de Python, quizás debas usar pip3 o invocar pip a través de Python:

    python3 -m pip install matplotlib

    Este método asegura que instalas en el mismo Python que usarás para correr tu código (¿Cómo solucionar módulo no encontrado en Python? | SatNatBlog (opens in a new tab)).

  • Con conda: Si trabajas en Anaconda o Miniconda, simplemente:

    conda install matplotlib

    Asegúrate de activar primero tu entorno con conda activate nombre_entorno.

Tras instalarlo, verifica en Python:

import matplotlib
print(matplotlib.__version__)

Si esto funciona sin errores y devuelve una versión, ¡lista! Matplotlib está instalado correctamente.


Caso 2: Múltiples versiones o entornos de Python

Muchas veces, tienes varias instalaciones o entornos de Python y estás instalando en uno y ejecutando en otro. De esto trata el problema que se presenta si matplotlib está instalado en un entorno, pero usas otro para correr tu script.

Cómo solucionar: Alinear instalación y ejecución

  1. Verifica qué Python ejecuta tu script. Ejecuta en terminal:
python --version
which python

o en Python:

import sys
print(sys.executable)
print(sys.version)
  1. Verifica con pip:
pip --version

Asegúrate de que coincide con la versión de Python que usas para correr tu código. De no ser así, usa:

python3 -m pip install matplotlib

o el pip correspondiente, por ejemplo:

python3.10 -m pip install matplotlib
  1. Instala en el mismo entorno.

De esta forma, aseguras que matplotlib esté en el lugar correcto.


Caso 3: Corrupción en la instalación o instalación incompleta

A veces, el conflicto está en que la instalación fue errónea o quedó incompleta.

Solución: Reinstala

  1. Desinstala:
pip uninstall matplotlib
  1. Y vuelve a instalar:
pip install matplotlib

Asegúrate de que la instalación termina sin errores. Puedes verificar qué hay en tu entorno con:

pip show matplotlib

Si aún con esto no funciona, prueba eliminar completamente y volver a instalar.


Caso 4: Uso de un entorno virtual o conda no activado

Si usas entornos virtuales, debes activarlos antes de instalar o ejecutar:

  • En Windows:
.\tu_entorno\Scripts\activate
  • En Linux/macOS:
source tu_entorno/bin/activate

Luego instala y ejecuta en ese entorno.


Caso 5: Configuración incorrecta en IDE

Si en tu IDE (PyCharm, VS Code, etc.) ves el error pero en terminal todo funciona, puede que esté usando un intérprete diferente.

Cómo solucionar:

  • En PyCharm: Ajusta Project Interpreter a la versión correcta.
  • En VS Code: Usa "Python: Select Interpreter" y elige el correcto.
  • Instala Matplotlib en ese entorno o intérprete desde el gestor de paquetes del IDE.

Caso 6: Kernel de Jupyter mal configurado

El problema frecuente en notebooks es que el kernel no tiene installado matplotlib.

Solución:

  • Ejecuta en una celda:
import sys
print(sys.executable)
  • Asegúrate de que sea el entorno donde instalaste Matplotlib.
  • Si no, selecciona o instala el kernel correcto, o en una celda:
%pip install matplotlib
  • Reinicia el kernel después para aplicar los cambios.

Caso 7: Problema de errores tipográficos o casing

El módulo se llama matplotlib en minúsculas. Si escribes import Matplotlib, fallará.

Cómo solucionarlo:

  • Usa:
import matplotlib
  • No uses mayúsculas ni errores de ortografía.

Caso 8: Conflictos en nombres de archivos

¿Tienes un archivo propio llamado matplotlib.py en tu proyecto? Esto puede impedir que Python cargue el paquete real.

Solución:

  • Cambia el nombre de tu archivo o directorio.
  • Borra archivos .pyc o __pycache__ para evitar caché.

Resumen final

Para solucionar el error "No Module Named Matplotlib", revisa cuidadosamente los puntos anteriores. Es decir:

  • Instala correctamente en el entorno correcto.
  • Usa el mismo intérprete para correr y para instalar.
  • Verifica en qué entorno o kernel estás ejecutando.
  • Renombra archivos que puedan interferir.
  • Configura tu IDE o Jupyter para usar el entorno correcto.

Con estos pasos, en breve podrás crear gráficos con Matplotlib sin problemas.


Alternativa a Matplotlib: Visualiza datos con PyGWalker

Si quieres otra forma sencilla de visualizar tus datos sin tanto lío con instalaciones, prueba PyGWalker (opens in a new tab). Es una librería open source que permite generar visualizaciones arrastrando y soltando en tus notebooks o scripts, sin escribir código adicional.

PyGWalker para visualización de datos (opens in a new tab)

Solo importa los datos y arrastra variables:

pip install pygwalker
import pygwalker as pyg
gwalker = pyg.walk(df)

Puedes usarlo en Kaggle o Colab para crear visualizaciones interactivas fácilmente.


Preguntas frecuentes (FAQ)

  1. ¿Por qué aparece aún después de instalarlo el error 'No Module Named Matplotlib'?
    Puede que uses distinto Python del que usaste para la instalación. Verifica versiones y entornos.

  2. ¿¿Por qué persiste si corregí la versión Python??
    Puede ser que la instalación esté dañada o que Python busque en otra ruta. Reinstala o ajusta la variable PYTHONPATH.

  3. ¿Puedo evitarlo instalando Matplotlib en un directorio específico?
    Solo si añades ese directorio a PYTHONPATH y Python lo busca. Pero lo ideal es instalar en el entorno adecuado.


¡Con estos consejos, solucionarás el error y volverás a disfrutar de visualizar tus datos en Python!