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
Causa | Solución |
---|---|
Matplotlib no instalado | Instala con pip install matplotlib o conda. |
Múltiples versiones/entornos de Python | Usa 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 configuradas | Verifica sys.path ; ajusta PYTHONPATH o reinstala correctamente. |
Instalación corrupta o incompleta | Desinstala y vuelve a instalar Matplotlib. |
Entorno virtual no activado | Activa el entorno virtual antes de usarlo y instala allí. |
IDE usando intérprete equivocado | Configura el IDE para usar el intérprete correcto con Matplotlib. |
Kernel de Jupyter mal configurado | Selecciona o instala el kernel correcto con los paquetes necesarios. |
Error tipográfico en importación | Usa 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
- Verifica qué Python ejecuta tu script. Ejecuta en terminal:
python --version
which python
o en Python:
import sys
print(sys.executable)
print(sys.version)
- 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
- 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
- Desinstala:
pip uninstall matplotlib
- 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.
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)
-
¿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. -
¿¿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 variablePYTHONPATH
. -
¿Puedo evitarlo instalando Matplotlib en un directorio específico?
Solo si añades ese directorio aPYTHONPATH
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!