
Visualizando as visitas ao Chinese American Museum: uma introdução ao gráfico de linha com Plotly
Entender qual é a quantidade de visitas em um museu pode ser bastante relevante para ter informações de sazonalidade, comparação de acordo com os eventos e exposições realizadas…
Ter uma visão mais ampla e clara do volume do fluxo de pessoas.
Mas como gerar essa visualização com Python?
Os primeiros passos em visualização de dados com Python, geralmente são com Matplotlib e Seaborn, mas em um próximo momento você pode querer ter visualizações mais interativas.
A biblioteca Plotly é uma boa escolha.
No texto de hoje, falarei com você pode criar um gráfico de linha simples com o Plotly.
Bora lá?!
Sumário
Visualizando com o Plotly express
Visualizando com Pandas
Os dados utilizados nesse texto estão disponíveis no Kaggle:
Você também pode brincar com eles ou com outros museus disponíveis.
Após uma seleção nos dados você pode plotar com o Pandas:
chinese_american_museu.plot(x=’date’,y=’visits’,title=’Quantidade de visitas ao Chinese American Museum’)
O Pandas automaticamente usa o matplotlib para criar o gráfico e vem da sua forma mais “crua” para que você melhore a visualização.
Mas você também pode modificar qual é a biblioteca utilizada, com o comando:
pd.options.plotting.backend = ‘plotly’chinese_american_museu.plot(x=’date’,y=’visits’,title=’Quantidade de visitas ao Chinese American Museum’)
E automaticamente ele já irá usar a outra biblioteca:
Hum, mas os dados estão meio esquisitos né?!
Isso é porque o Plotly utilizará a ordem que você passou para ele.
Para isso você precisará ordenar antes.
chinese_american_museu.sort_values(by=’date’,inplace=True)
Pronto!
Visualizando com o Plotly express
Mas talvez você não precisou utilizar o pandas para manipular os dados e queira apenas visualizar eles de forma rápida.
Para isso, você pode utilizar o plotly.express
Um módulo dentro do Plotly que com apenas uma função, você pode criar gráficos de forma mais simples.
Você pode importar ele com o apelido de px:
import plotly.express as px
E criar um gráfico de linha:
px.line(chinese_american_museu, x=’date’, y=’visits’,title=’Quantidade de visitas ao Chinese American Museum’)
O resultado será o mesmo.
Visualizando com o plotly.graph_objects
Nem sempre o plotly express poderá resolver seus problemas.
Quanto mais customizações e domínio sobre sua visualização, maior a quantidade de detalhes e sobre o código que você precisará desenvolver.
Por isso, você pode utilizar o módulo .graph_objects.
Você importa ele:
import plotly.graph_objects as go
Insere todos os parâmetros que precisa para que seja desenhado cada elemento no gráfico:
fig = go.Figure()fig.add_trace(go.Scatter(x=chinese_american_museu[‘Month’], y=chinese_american_museu[‘Chinese American Museum’]))annotations = []annotations.append(dict(xref=’paper’, yref=’paper’, x=0.0, y=1.15,xanchor=’left’, yanchor=’bottom’,text=’Quantidade de visitas ao Chinese American Museum’,font=dict(family=’Arial’,size=25,color=’black’),showarrow=False))fig.update_layout(annotations=annotations)fig.show()
O gráfico de linha no Plotly na realidade são gráficos de dispersão conectados e você pode ver isso quando plota dessa forma.
Considerações finais
Gráficos estáticos são bons, mas em um mundo acostumado com gráficos dinâmicos (como com o Power BI, Tableau, Data Studio…) se torna importante correr atrás para aprender novas ferramentas com Python.
Eu acho bastante trabalhoso criar visualizações de dados com Python, mas dá uma satisfação bem grande quando você vai aprendendo e entendendo melhor as bibliotecas.
Essa foi uma bem pequena amostra do que a biblioteca pode fazer. O Plotly tem ainda muito conteúdo para eu explorar e entender, mas acho muito legal a ideia.
E você, conhece mais sobre o Plotly? Tem alguma dica que pode me dar sobre ela?
Ou você nunca tinha visto ela? Tem alguma dúvida sobre ela?
Deixe nos comentários e vamos conversar mais sobre.
Se você chegou até aqui e curtiu, dê palmas, compartilhe e se inscreva para me acompanhar.
Ainda há muito a se explorar.