https://github.com/vmendes93/qgis-interpolagem
Escrevendo um plugin experimental para interpolação (IDW e Krigagem) no QGIS.
https://github.com/vmendes93/qgis-interpolagem
geoscience interpolation-techniques open-source qgis statistical-models
Last synced: 26 days ago
JSON representation
Escrevendo um plugin experimental para interpolação (IDW e Krigagem) no QGIS.
- Host: GitHub
- URL: https://github.com/vmendes93/qgis-interpolagem
- Owner: vmendes93
- License: mit
- Created: 2025-05-19T15:46:35.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-28T14:22:12.000Z (about 1 year ago)
- Last Synced: 2025-05-28T14:40:58.184Z (about 1 year ago)
- Topics: geoscience, interpolation-techniques, open-source, qgis, statistical-models
- Language: Python
- Homepage: https://vmendes93.github.io/qgis-interpolagem/
- Size: 102 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Kit de Interpolação para QGIS
[](https://www.python.org/)
[](LICENSE)
[](https://github.com/vmendes93/qgis-interpolagem/issues)
[](https://github.com/vmendes93/qgis-interpolagem/stargazers)
[](https://vmendes93.github.io/qgis-interpolagem/)

Kit de ferramentas para interpolação espacial, com suporte a métodos como IDW, Krigagem e geração de modelo potenciométrico. Desenvolvido para eventual integração como plugin do QGIS.
## 📋 Índice
- [Funcionalidades](#funcionalidades)
- [Instalação](#instalação)
- [Exemplo Rápido](#exemplo-rápido)
- [Documentação](#documentação)
- [Requisitos](#requisitos)
- [Desenvolvimento](#desenvolvimento)
- [Como Contribuir](#como-contribuir)
- [Changelog](#changelog)
- [Licença](#licença)
- [Autor](#autor)
## ✨ Funcionalidades
- **Interpolação IDW** (Inverse Distance Weighting)
- Configuração flexível de expoente, vizinhos e distância máxima
- Tratamento adequado de casos extremos
- Opção de valor padrão para células sem vizinhos válidos
- **Krigagem Ordinária**
- Suporte a diferentes modelos de variograma (esférico, exponencial, gaussiano, linear)
- Configuração de anisotropia
- Cálculo de variância de estimativa
- **Modelo Potenciométrico**
- Cálculo de gradientes e vetores de fluxo
- Visualização de vetores de fluxo com opções de personalização
- Análise de superfícies potenciométricas
- **Recursos Adicionais**
- Sistema de logging para monitoramento detalhado do progresso
- Testes automatizados com alta cobertura de código
- Documentação completa com exemplos e tutoriais
## 🚀 Instalação
```bash
# Instalação via pip (quando disponível)
pip install qgis-interpolagem
# Instalação a partir do código fonte
git clone https://github.com/vmendes93/qgis-interpolagem.git
cd qgis-interpolagem
pip install -e .
```
## 💡 Exemplo Rápido
```python
from interpoladores.idw import IDW
from interpoladores.config import IDWConfig
import numpy as np
# Pontos conhecidos
pontos = np.array([[0, 0], [1, 0], [0, 1], [1, 1]] )
valores = np.array([10, 20, 30, 40])
# Grade para interpolação
x = np.linspace(0, 1, 10)
y = np.linspace(0, 1, 10)
grid_x, grid_y = np.meshgrid(x, y)
# Configuração personalizada
config = IDWConfig(power=2.0, n_neighbors=3)
# Interpolação
idw = IDW(config)
z = idw.interpolar(pontos, valores, grid_x, grid_y)
# Visualização (opcional)
import matplotlib.pyplot as plt
plt.figure(figsize=(10, 8))
plt.contourf(grid_x, grid_y, z, 20, cmap='viridis')
plt.colorbar(label='Valor')
plt.scatter(pontos[:, 0], pontos[:, 1], c='red', s=50)
plt.title('Interpolação IDW')
plt.show()
```
## 📚 Documentação
A documentação completa está disponível em [https://vmendes93.github.io/qgis-interpolagem/](https://vmendes93.github.io/qgis-interpolagem/)
Inclui:
- [Guia de Início Rápido](https://vmendes93.github.io/qgis-interpolagem/quickstart.html)
- [Conceitos de Interpolação](https://vmendes93.github.io/qgis-interpolagem/conceitos.html)
- [Referência do Pacote](https://vmendes93.github.io/qgis-interpolagem/pacote.html)
- [Exemplos Detalhados](https://vmendes93.github.io/qgis-interpolagem/exemplos.html)
## 📋 Requisitos
- Python 3.8 ou superior
- NumPy 1.20 ou superior
- SciPy 1.7 ou superior
- Matplotlib 3.4 ou superior
- PyKrige 1.6 ou superior (para Krigagem)
## 🛠️ Desenvolvimento
Para contribuir com o desenvolvimento:
```bash
# Clone o repositório
git clone https://github.com/vmendes93/qgis-interpolagem.git
cd qgis-interpolagem
# Crie e ative um ambiente virtual
python -m venv venv
source venv/bin/activate # No Windows: venv\Scripts\activate
# Instale em modo de desenvolvimento
pip install -e ".[dev]"
# Configure os hooks de pre-commit
pre-commit install
# Execute os testes
make test
# Verifique a cobertura de código
make coverage
# Gere a documentação
make docs
```
## 👥 Como Contribuir
Contribuições são muito bem-vindas! Veja [CONTRIBUTING.md](CONTRIBUTING.md) para detalhes sobre como contribuir com o projeto.
Resumo:
1. Faça um fork do projeto
2. Crie sua branch de feature (`git checkout -b feature/AmazingFeature`)
3. Commit suas mudanças (`git commit -m 'Add some AmazingFeature'`)
4. Push para a branch (`git push origin feature/AmazingFeature`)
5. Abra um Pull Request
Não se esqueça de dar uma ⭐️ no projeto se ele te ajudou!
## 📝 Changelog
Veja o arquivo [CHANGELOG.md](CHANGELOG.md) para detalhes sobre as mudanças em cada versão.
## 📄 Licença
Este projeto está licenciado sob a licença MIT - veja o arquivo [LICENSE](LICENSE) para detalhes.
## ✍️ Autor
Vinicius Mendes - [vmendes93](https://github.com/vmendes93)
---