Skip to content

Como corrigir o erro "No Module Named Matplotlib" em Python

ModuleNotFoundError: No module named 'matplotlib' é um dos erros mais comuns em Python ao trabalhar com visualização de dados. Ele simplesmente significa que o Python não consegue localizar o pacote Matplotlib no seu ambiente atual. A boa notícia?
Esse problema é fácil de resolver assim que você identifica onde está o desencontro.

Este guia, atualizado para 2025, cobre todas as causas possíveis e oferece soluções passo a passo, bem claras, para que você volte a gerar gráficos rapidamente.

Antes de entrar em detalhes, aqui vai um resumo rápido.


⚡ TL;DR — Checklist de Correção Rápida (Funciona para 80% dos casos)

  1. Verifique a instalação
    python -m pip install matplotlib

2. Verifique qual Python você está usando

   ```python
   import sys; print(sys.executable)
   ```

3. Em Jupyter Notebook (causa mais comum):

   ```python
   %pip install matplotlib
   ```

   Depois reinicie o kernel.

4. Garanta que não exista nenhum arquivo chamado `matplotlib.py` no seu diretório de trabalho.

Ainda não funcionou? Continue lendo — a sua resposta está abaixo.

---

# Por que esse erro acontece

Você vê `ModuleNotFoundError` quando:

* O Matplotlib não foi instalado no ambiente que você está usando.
* Você está executando o Python a partir de um interpretador diferente do esperado.
* O Jupyter está usando um kernel que não tem Matplotlib instalado.
* Sua IDE está usando um interpretador errado.
* Algum arquivo no seu projeto está “sobrescrevendo” a biblioteca real `matplotlib`.
* Variáveis de ambiente, caminhos ou ambientes virtuais estão mal configurados.
* A instalação está corrompida.

---

## 🧠 Tabela de Referência Rápida: Causas & Soluções

| **Causa**                         | **Resumo da solução**                                                            |
| --------------------------------- | -------------------------------------------------------------------------------- |
| Matplotlib não instalado          | Instale com `python -m pip install matplotlib` (ou `conda install matplotlib`). |
| Múltiplas versões de Python       | Combine interpretador com pip: `python -m pip install ...`.                     |
| Hashbang incorreto                | Atualize a linha `#!` ou rode explicitamente com `python3 script.py`.           |
| PATH / PYTHONPATH incorretos      | Garanta que `sys.path` inclua site-packages ou redefina as variáveis.           |
| Instalação corrompida             | `pip uninstall matplotlib` → reinstale.                                         |
| Virtual env não ativado           | Ative o venv antes de instalar/executar.                                        |
| Interpretrador errado na IDE      | Selecione o interpretador correto no VS Code / PyCharm.                         |
| Kernel Jupyter incorreto          | Use o kernel correto ou instale Matplotlib dentro do Notebook.                  |
| Erro de digitação ou maiúsculas   | Use `import matplotlib` (tudo minúsculo).                                       |
| Conflito de nomes                 | Remova/renomeie arquivos como `matplotlib.py` no seu projeto.                   |

---

# Problema 1: Matplotlib não está instalado

### ✔ Por que acontece

A biblioteca simplesmente não está presente no seu ambiente.

### ✔ Correção

Instale usando pip ou conda:

```bash
python -m pip install matplotlib
# ou
pip install matplotlib
```

Para usuários conda:

```bash
conda install matplotlib
```

Verifique a instalação:

```python
import matplotlib
print(matplotlib.__version__)
```

Se o import funcionar, está resolvido.

---

# Problema 2: Você tem múltiplas versões de Python ou ambientes

Este é o **principal motivo na prática** para esse erro.

Exemplos:

* Você instalou o Matplotlib para o Python 3.11,
  mas está executando o script com o Python 3.9.
* Você instalou o Matplotlib em um ambiente virtual,
  mas está rodando o script no Python do sistema.

### ✔ Correção: Garanta que o pip instala no mesmo Python que você executa

Verifique seu interpretador Python:

```bash
python -V
python3 -V
```

Verifique o alvo do pip:

```bash
pip --version
```

Forma recomendada de instalação (mais confiável):

```bash
python -m pip install matplotlib
```

Usuários Windows:

```bash
py -3.11 -m pip install matplotlib
```

Isso garante que o pip instala no interpretador certo.

---

# Problema 3: Hashbang incorreto no script (Linux/Mac)

Se seu script começa com:

```bash
#!/usr/bin/python
```

…ele pode, sem querer, rodar Python 2 ou um Python do sistema.

### ✔ Correção

Use o shebang correto:

```bash
#!/usr/bin/env python3
```

Ou simplesmente execute o script explicitamente:

```bash
python3 plot.py
```

---

# Problema 4: Python pesquisando no caminho errado (sys.path / variáveis de ambiente)

Causas comuns:

* `PYTHONPATH` mal configurado
* Variáveis de ambiente quebradas
* Local de `site-packages` personalizado

### ✔ Correção

Veja onde o Python está procurando:

```python
import sys
print(sys.path)
```

Encontre onde o Matplotlib foi instalado:

```bash
pip show matplotlib
```

Se ele não estiver no caminho de busca do Python, corrija:

* Removendo `PYTHONPATH` incorreto
* Reinstalando o Matplotlib normalmente
* Evitando “gambiarras” de path manuais, a menos que realmente precise

Diagnóstico temporário (não recomendado a longo prazo):

```python
import sys
sys.path.append("/path/to/matplotlib")
```

---

# Problema 5: Instalação corrompida ou incompleta

Se a instalação foi interrompida ou dependências falharam, o Matplotlib pode ter ficado parcialmente instalado.

### ✔ Correção: Reinstalação limpa

```bash
pip uninstall matplotlib
pip install matplotlib --no-cache-dir
```

Verifique as dependências:

```bash
pip check
```

---

# Problema 6: Ambiente virtual não ativado

Você pode ter instalado o Matplotlib em um venv…
… mas está rodando o Python fora desse venv.

### ✔ Correção: Ative o venv primeiro

**Windows**

```bash
.\venv\Scripts\activate
```

**macOS/Linux**

```bash
source venv/bin/activate
```

Depois instale:

```bash
pip install matplotlib
```

Garanta que o Python aponte para o venv:

```python
import sys; print(sys.executable)
```

---

# Problema 7: IDE usando o interpretador errado (VS Code / PyCharm)

### ✔ Correção no VS Code

Clique no interpretador no canto inferior direito → selecione o ambiente correto  
(ou rode):

```
Ctrl + Shift + P → “Python: Select Interpreter”
```

### ✔ Correção no PyCharm

Preferences → Project → Python Interpreter → selecione o ambiente correto.

Se a IDE usa um Python errado, o Matplotlib parece “não instalado” mesmo já estando presente.

---

# Problema 8: Kernel do Jupyter Notebook incorreto

*(Causa mais frequente em workflows de ciência de dados)*

Cenário típico:

* Você instalou o Matplotlib no terminal
* O Jupyter Notebook está usando um Python completamente diferente

### ✔ Correção 1: Verifique o Python do notebook

```python
import sys; print(sys.executable)
```

### ✔ Correção 2: Instale o Matplotlib *dentro* desse kernel

```python
%pip install matplotlib
```

Reinicie o kernel → faça o import novamente.

### ✔ Correção 3: Registre o ambiente como um kernel do Jupyter

```bash
python -m ipykernel install --user --name myenv --display-name "Python (myenv)"
```

---

# Problema 9: Erro de digitação ou sensibilidade a maiúsculas no import

Correto:

```python
import matplotlib
import matplotlib.pyplot as plt
```

Incorreto:

❌ `import Matplotlib`  
❌ `import matplotllib`

---

# Problema 10: Conflito de nomes (shadowing)

Se o seu projeto contém arquivos como:

* `matplotlib.py`
* Pasta chamada `matplotlib/`

o Python vai importar o seu arquivo **em vez da biblioteca real**.

### ✔ Correção

Renomeie seu arquivo/pasta:

```
my_plot_test.py
```

Apague caches gerados automaticamente:

```
__pycache__/
```

---

# Tabela-resumo (Atualizada e concisa)

| **Causa**             | **Solução**                               |
| --------------------- | ----------------------------------------- |
| Não instalado         | Instale via pip/conda                     |
| Interpretador errado  | Use `python -m pip install`               |
| Hashbang incorreto    | Use `#!/usr/bin/env python3`              |
| Caminho errado        | Verifique `sys.path`, redefina variáveis  |
| Instalação corrompida | Reinstale com `--no-cache-dir`            |
| venv não ativado      | Ative o ambiente antes de executar        |
| IDE incorreta         | Selecione o interpretador correto         |
| Jupyter incorreto     | Instale com `%pip`, use o kernel correto  |
| Erro de digitação     | Use `matplotlib` em minúsculas            |
| Conflito de nome      | Renomeie arquivos locais                  |

---

# 🔥 Alternativa: Uma forma sem setup de visualizar dados — PyGWalker

Se você está cansado de depurar ambientes Python e quer uma forma mais rápida de visualizar dados, experimente o **PyGWalker** — uma ferramenta open-source de análise visual drag-and-drop que funciona direto no Jupyter.

```bash
pip install pygwalker
```

```python
import pygwalker as pyg
gwalker = pyg.walk(df)
```

Experimente online:

| Kaggle                                                                                       | Google Colab                                                                | GitHub                                                                         |
| -------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| [https://www.kaggle.com/asmdef/pygwalker-test](https://www.kaggle.com/asmdef/pygwalker-test) | [https://colab.research.google.com/](https://colab.research.google.com/)... | [https://github.com/Kanaries/pygwalker](https://github.com/Kanaries/pygwalker) |

---

# FAQ

### 1. Instalei o Matplotlib mas ainda recebo o erro — por quê?

Você provavelmente está usando um interpretador Python diferente daquele em que o Matplotlib foi instalado.

### 2. Por que o erro continua mesmo depois de reinstalar?

Sua instalação pode estar corrompida ou o Python está procurando no caminho errado. Tente reinstalar com:

```bash
pip install matplotlib --no-cache-dir
```

### 3. Posso instalar o Matplotlib em um diretório personalizado?

Sim — mas o Python precisa ter esse diretório no `sys.path`.  
Usar os métodos de instalação padrão é muito mais simples e confiável.

---

<JSONldScript
faq={{
data: [
{
question: "Why do I encounter the 'No Module Named Matplotlib' error even after installation?",
answer: "You are likely running Python from a different interpreter than the one where Matplotlib is installed.",
},
{
question: "Why does the error persist even after correcting the Python version?",
answer: "You may have a corrupted installation or Python is checking the wrong path. Try reinstalling or fixing paths.",
},
{
question: "Can I install Matplotlib in a custom directory?",
answer: "Yes, but Python must include that directory in its search paths (`sys.path`).",
}
]
}}
/>