Scatter Matplotlib
Criando Plots Scatter (Espalhamento)
Com Pyplot, você pode usar a função scatter() para desenhar um plot.
A função scatter() plota um ponto para cada observação. Ela precisa de dois arrays de mesmo tamanho, um para os valores do eixo-x, e outro para valores do eixo-y:
EXEMPLO: Um plot scatter simples:

A observação no exemplo acima é o resultado das velocidades de 13 carros passando pelo radar.
O eixo-X mostra quão velho o carro é.
O eixo-Y mostra a velocidade do carro quando passa pelo radar.
Existe alguma relação entre estas observações?
Parece que quanto mais novo o carro, mais veloz ele é dirigido, mas isto poderia ser uma coincidência, afinal registramos somente 13 carros.
Comparar Gráficos
No exemplo acima, parece haver uma relação entre a velocidade e a idade, mas e se traçarmos as observações de outro dia também? O gráfico de dispersão (scatter) nos dirá mais alguma coisa?
EXEMPLO: Desenhe dois plots na mesma figura:

NOTA: Os dois plots foram plotados com duas cores diferentes, por default azul e laranja, você aprenderá como mudar as cores mais tarde neste capítulo.
Comparando os dois plots, acho que é seguro dizer que ambos nos dão a mesma conclusão: quanto mais novo o carro, mais rápido ele é dirigido.
Cores
Você pode configurar sua própria cor para cada scatter com o argumento color ou c.
EXEMPLO: Configure sua própria cor dos marcadores:

Colorir Cada Ponto
Você pode até definir uma cor específica para cada ponto usando um array de cores como valor para o argumento c.
NOTA: Você não pode usar o argumento color para isto, somente o argumento c.
EXEMPLO: Defina sua própria cor dos marcadores:

Mapa de Cores
O módulo Matplotlib tem vários mapas de cores disponíveis.
Um mapa de cor é como uma lista de cores, onde cada cor tem um valor na faixa de 0 a 100.
Aqui está um exemplo de um mapa de cor:

Este mapa de cores é chamado ‘viridis’ e como você pode ver ele vai de 0, que é a cor roxa, até 100, que é a cor amarela.
Como Usar o Mapa de Cores
Você pode especificar o mapa de cor com o argumento cmap com o valor do mapa de cores, neste caso ‘viridis’ que é um dos mapas de cores embutidos disponíveis no Matplotlib.
Além disso você tem de criar um array com os valores (de 0 a 100), um valor para cada um dos pontos no plot scatter.
EXEMPLO: Crie um array de cores, e especifique um mapa de cores no scatter plot:

Você pode incluir o mapa de cores no desenho colocando a declaração plt.colorbar().
EXEMPLO: Incluir o mapa de cores real:

Mapa de Cores Disponíveis
Você pode escolher qualquer dos mapas de cores embutidos:
| Nome | Reverso |
|---|---|
| Accent | Accent_r |
| Blues | Blues_r |
| BrBG | BrBG_r |
| BuGn | BuGn_r |
| BuPu | BuPu_r |
| CMRmap | CMRmap_r |
| Dark2 | Dark2_r |
| GnBu | GnBu_r |
| Greens | Greens_r |
| Greys | Greys_r |
| OrRd | OrRd_r |
| Oranges | Oranges_r |
| PRGn | PRGn_r |
| Paired | Paired_r |
| Pastel1 | Pastel1_r |
| Pastel2 | Pastel2_r |
| PiYG | PiYG_r |
| PuBu | PuBu_r |
| PuBuGn | PuBuGn_r |
| PuOr | PuOr_r |
| PuRd | PuRd_r |
| Purples | Purples_r |
| RdBu | RdBu_r |
| RdGy | RdGy_r |
| RdPu | RdPu_r |
| RdPu | RdPu_r |
| RdYlBu | RdYlBu_r |
| RdYlGn | RdYlGn_r |
| Reds | Reds_r |
| Set1 | Set1_r |
| Set2 | Set2_r |
| Set3 | Set3_r |
| Spectral | Spectral_r |
| Wistia | Wistia |
| YlGn | YlGn_r |
| YlGnBu | YlGnBu_r |
| YlOrBr | YlOrBr_r |
| YlOrRd | YlOrRd_r |
| afmhot | afmhot_r |
| autumn | autumn_r |
| binary | binary_r |
| bone | bone_r |
| brg | brg_r |
| bwr | bwr_r |
| cividis | cividis_r |
| cool | cool_r |
| coolwarm | coolwarm_r |
| copper | copper_r |
| cubehelix | cubehelix_r |
| flag | flag_r |
| gist_earth | gist_earth_r |
| gist_gray | gist_gray_r |
| gist_heat | gist_heat_r |
| gist_ncar | gist_ncar_r |
| gist_rainbow | gist_rainbow_r |
| gist_stern | gist_stern_r |
| gist_yarg | gist_yarg_r |
| gnuplot | gnuplot_r |
| gnuplot2 | gnuplot2_r |
| gray | gray |
| hot | hot_r |
| hsv | hsv_r |
| inferno | inferno_r |
| jet | jet_r |
| magma | magma_r |
| nipy_spectral | nipy_spectral_r |
| ocean | ocean_r |
| pink | pink_r |
| plasma | plasma_r |
| prism | prism_r |
| rainbow | rainbow_r |
| seismic | seismic_r |
| spring | spring_r |
| summer | summer_r |
| tab10 | tab10_r |
| tab20 | tab20_r |
| tab20b | tab20b_r |
| tab20c | tab20c_r |
| terrain | terrain |
| twilight | twilight_r |
| twilight_shifted | twilight_shifted_r |
| viridis | viridis_r |
| winter | winter_r |
Tamanho
Você pode mudar o tamanho dos pontos com o argumento s.
Exatamente como comas cores, certifique-se que o array para os tamanhos tem o mesmo tamanho que os arrays para os eixos x e y.
EXEMPLO: Defina seu próprio tamanho para os marcadores:

Alpha
Você pode ajustar a transparência dos pontos com o argumento alpha.
Exatamente como com cores, certifique-se que o array para os tamanhos são iguais aqueles dos arrays para os eixos x e y.
EXEMPLO: Defina seu próprio size para os marcadores:

Combinar Tamanho de Cor e Alpha
Você pode combinar um mapa de cores com diferentes tamanhos nos pontos. Isto é melhor visualizado se os pontos forem transparentes:
EXEMPLO: Crie um array randômico com 100 valores para pontos-x, pontos-y, cores e tamanhos:
