https://github.com/persiyanov/streamlit-geodata-visualization
Geospatial data parsing and visualization (Mapbox + Streamlit)
https://github.com/persiyanov/streamlit-geodata-visualization
data-visualization geocoding geospatial mapbox mapbox-geocoding pydeck streamlit visualization
Last synced: 2 months ago
JSON representation
Geospatial data parsing and visualization (Mapbox + Streamlit)
- Host: GitHub
- URL: https://github.com/persiyanov/streamlit-geodata-visualization
- Owner: persiyanov
- License: mit
- Created: 2022-11-13T19:01:54.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-11-17T21:20:06.000Z (over 2 years ago)
- Last Synced: 2024-01-30T09:15:08.840Z (over 1 year ago)
- Topics: data-visualization, geocoding, geospatial, mapbox, mapbox-geocoding, pydeck, streamlit, visualization
- Language: Python
- Homepage:
- Size: 3.5 MB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Geospatial Data Visualization (Streamlit + Mapbox)
## Live Demo
**Available here:** https://streamlit-geodata-visualization-jyiexkhtva-lm.a.run.app/

## Description
This repo is a demonstration of parsing geo-coordinates from address data using Mapbox.com and visualizing via awesome [Streamlit](https://streamlit.io/) library.Repo consists of two parts:
1. Geocoding of text addresses using Mapbox.com (see `scripts` folder)
2. Visualization of geocoded data using Streamlit and its pydeck integration (`streamlit_app.py`)**Dataset**: [NYC-Housing-Data-2003-2019](https://www.openml.org/search?type=data&status=active&sort=match&id=43633)
## Setup
### Docker1. Run `docker build -t geodata .`
2. Run `docker run -it -p 80:80 geodata`
3. Open http://127.0.0.1:80/### Virtual Environment
1. Create virtual environment using your favorite tool (e.g. [pyenv](https://github.com/pyenv/pyenv)). I used Python 3.9.15 for development, but code should work for all 3.8+ versions.
2. Run `pip install -r requirements.txt`
3. Run `streamlit run streamlit_app.py`## Deploy
1. Set up an account on [Google Cloud Platform](https://cloud.google.com/)
2. Install [gcloud cli](https://cloud.google.com/sdk/docs/install)
3. Run `gcloud run deploy` (deployment via Cloud Run)
4. **Note**: make sure to reply `y` when prompted `Allow unauthenticated invocations to [streamlit-geodata-visualization] (y/N)?`