Figuras com Matplotlib
Introdução
Como você já deve ter percebido criar uma biblioteca de plotagem de dados que seja possível criar gráficos robustos e altamente personalizados não deve ter sido fácil. Mas para a nossa felicidade os colaboradores da biblioteca matplotlib conseguiram. Com a biblioteca é possível criar gráficos complexos com poucas linhas de código. E o mais impressionante, assim como é fácil criar um gráfico com poucas linhas, é fácil personalizar esses gráficos com a mesma facilidade. Nos próximo tutoriais aprenderemos como modificar os elementos das figuras, como o sistema de coordenadas usado.
Várias figuras juntas com matplotlib
A analise de dados só é possível com outros dados para comparar. Esses dados podem ser outros dados ou o mesmo dado representado de forma de diferente. Representar o mesmo dado de forma diferentes permite o analista ter um ponto de vista diferente. Isso permite chegar a conclusões que não seriam possíveis apenas com uma representação dos dados. Mas fazer essas representações em gráficos diferentes poderia trazer o inconveniente dos gráficos ficarem separados. Para solucionar isso a biblioteca matplotlib nos permite criar vários gráficos em apenas um.
Como criar vários gráficos em apenas um
Para criar vários gráficos em apenas um podemos usar o método subplot2grid. Com ele é possível criar gráficos independentes e apresentá-los numa única figura. Veja como fazer isso no exemplo abaixo:
from matplotlib import pyplot as plt
barras = [5., 25., 50., 20.]
c_pontos = np.random.rand(100, 2)
sin_x = np.linspace(0, 2 * np.pi, 100)
sin_y = np.sin(sin_x)
grid_size = (4, 2)
plt.subplot2grid(grid_size, (0, 0), rowspan = 3, colspan = 1)
plt.bar(range(len(barras)), barras)
plt.subplot2grid(grid_size, (0, 1), rowspan = 3, colspan = 1)
plt.plot(sin_x, sin_y)
plt.subplot2grid(grid_size, (3, 0), rowspan = 1, colspan = 2)
plt.scatter(c_pontos[:,0], c_pontos[:,1])
plt.tight_layout()
plt.show()
Executando o código acima o seu gráfico deve esta parecido com esse:
Como funciona a função subplot2grid
O que fazemos com a função subplot2grid é dividir o gráfico em linhas e colunas. Assim desenhamos os nosso gráficos em forma de retângulo e adicionamos esses retângulos a grade criada pela função subplot2grid.
Veja os parâmetros da função subplot2grid:
- O primeiro parâmetro é uma tupla com o número de linhas e colunas que a grade deve ter.
- O segundo parâmetro é uma tupla com as coordenadas onde o gráfico deve ficar na grade.
- O terceiro parâmetro define quantas linhas da grade o nosso gráfico deve ocupar.
- O quarto define quantas colunas o gráfico deve ocupar da grade.
A próxima chamada a funções do módulo pyplot definira o tipo de gráfico que será renderizado. Para cada novo gráfico, que será adicionado a grade, a função subplot2grid deve ser chamada.
Nesse exemplo criamos uma grade com quatro linhas e duas colunas. As duas primeiras figuras ocupam três linhas e uma coluna cada. A terceira figura ocupa uma linha e duas colunas, preenchendo todo o espaço da grade. Depois de ocuparmos todo o espaço da grade chamamos a função tight_layout. Essa função compacta todas as figuras e impede que uma figura se sobreponha a outra.
0 comentários:
Postar um comentário