logo SEnC

III SEnC - Introdução ao SciPy e ao matplotlib

Sejam bem-vindos!

Esperamos que estejam aproveitando a semana!

O GEPAC lhes dá as boas vindas ao curso introdutório de SciPy, NumPy e matplotlib.

Além do ministrante, teremos um monitor disponível durante todo o minicurso. Sinta-se livre para chamar qualquer um dos dois caso surja alguma dúvida no decorrer dessa aventura.

Ao final do curso, caso queira conhecer um pouco mais sobre essas bibliotecas e como elas podem ser usadas de diversas formas para resolver uma variedade de problemas, sinta-se livre para explorar nossos projetos passados aqui no site! Também forneceremos links para a documentação e tutoriais oficiais dessas bibliotecas ao longo dos textos.

Também fique ligado para as próximas atividades do Grupo seguindo a nossa página do Facebook e participando do nosso grupo no WhatsApp pelo QR code abaixo:

QRCode para a Semana de Engenharia de Computação 2019

O que aprenderemos hoje?

bibliotecas

Muitas vezes na física, nas outras ciências e nas engenharias nos deparamos com problemas os quais não conseguimos (ou simplesmente não queremos) resolver analíticamente. Talvez tenhamos uma equação muito difícil, ou então um arquivo enorme e cheio de dados, ou quem sabe só queremos alguns gráficos bonitos para o relatório de Lab II.

Todos esses problemas podem ser resolvidos facilmente se tivermos as ferramentas certas! E é isso (e muito mais) que o ecossistema SciPy nos fornece.

O NumPy nos introduz os arrays: uma estrutura de certa forma similar às listas do próprio Python, porém muito mais poderosa quanto à sua capacidade para realizar cálculos numéricos com simplicidade. É com esses arrays que trabalharemos em todas as outras bibliotecas.

O SciPy nos fornece uma série de ferramentas e funções para manipular e trabalhar com nossos dados, e por fim o matplotlib nos permite visualizar esses dados através de vários tipos de gráficos e figuras.

Juntas, essas três bibliotecas oferecem uma alternativa gratuita ao MATLAB, além de contarem com todo o poder e versatilidade do Python.

Vale comentar também que elas funcionam muito bem em conjunto com outras bibliotecas bem famosas para diversos propósitos, como o SymPy para cálculo simbólico, Pandas para análise de dados, scikit-learn para Machine Learning, OpenCV para Visão Computacional e muito mais.

Espero que isso sirva de motivação para o que veremos a seguir. Estudaremos com um pouco mais de profundidade cada uma dessas bibliotecas, e ao final aplicaremos nosso conhecimento recém adquirido em alguns projetos que simulam problemas reais com os quais poderíamos nos deparar.

Cobriremos os seguintes temas:

NumPy

  1. O que é NumPy?
  2. N-dimensional array (ndarray)
    • Estrutura
    • Tipos de dados
    • Slicing
    • Masking
  3. Broadcasting
    • Operações com arrays
    • vectorize e frompyfunc
    • Funções universais
  4. Usando tabelas de dados externas: loadtxt e savetxt

matplotlib

  1. O que é matplotlib?
  2. A interface pyplot e a função plot
  3. Usando o pyplot interativamente
  4. Controlando o tamanho da figura
  5. Controlando as escalas de um par de eixos
  6. Fazendo mais de um gráfico na mesma figura
  7. Fazendo muitos gráficos semelhantes
  8. Mudando o estilo de um gráfico
  9. Exportando uma figura

SciPy

  1. O que é SciPy?
  2. Ajustando parâmetros de curvas com curve_fit
  3. Transformadas de Fourier com o fftpack
  4. Calculando integrais com integrate
  5. Solução de sistemas de EDOs (exemplo: pêndulo)