Pydeck, visualização de dados em Python. Camada de coluna em mapas Carto.
Vou explorar os recursos de visualização de dados geográficos do deck.gl com a biblioteca Python e pandas. Deck.gl é uma estrutura de visualização baseada em WebGL para conjuntos de dados de grande escala, e pydeck é uma renderização espacial de alta escala para Python (desenvolvida por deck.gl).
Para este projeto, estou usando o Jupyter Notebook — o aplicativo da Web original para criar e compartilhar documentos computacionais. Ele oferece uma experiência simples, simplificada e centrada em documentos.
A principal biblioteca Python para este projeto é pydeck. Por padrão, o pydeck 0.6 fornece blocos de mapa base por meio do Carto. Você pode opcionalmente usar a chave de API do Mapbox, registrando-se no Mapbox. Mas, o mapa Carto é suficiente para este projeto.
Vamos importar o pydeck via pip:
pip install pydeck
- Começamos importando bibliotecas Python essenciais para nossas operações: pandas, pydeck, os e opcionalmente matplotlib.pyplot (posso desenvolver este post no futuro)
import pandas as pd
import pydeck as pdk
from pydeck.types import String
import matplotlib.pyplot as plt
import os
os.listdir() ## checking the current file composition of the folder
df = pd.read_excel('stores.xlsx') ## reading .xlsx file to Pandas DataFrame
df.set_index('Location Name') ## setting indexing to store's name
df.columns
# output
# Index(['Location Name', 'Address line 1', 'Address line 2', 'Address line 3',
# 'City Name', 'Latitude', 'Longitude', 'Lat', 'Long', 'Postal Code',
# 'Results'],
# dtype='object')
df2 = df[['Location Name', 'City Name', 'Latitude', 'Longitude', 'Lat', 'Long', 'Postal Code', 'Results']]
df2
df2["Long"] = df2["Long"].astype(float)
df2["Lat"] = df2["Lat"].astype(float)
df2
layer = pdk.Layer(
'ColumnLayer',
df2,
get_position=['Long', 'Lat'],
get_elevation=["Results"],
auto_highlight=True,
elevation_scale=5,
pickable=True,
extruded=True,
get_radius=100,
get_fill_color=["Results * 10", "Results", "Results * 40", 220],
coverage=1
)
# Set the viewport location
view_state = pdk.ViewState(
longitude=25.336900,
latitude=54.734235,
zoom=2,
min_zoom=5,
max_zoom=15,
pitch=40.5,
bearing=-27.36)
r = pdk.Deck(layers=[layer], initial_view_state=view_state)
r.to_html('stores.html')





































![O que é uma lista vinculada, afinal? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)