Comments (4)
We should test again with the new AbortSignal
support: manzt/anywidget#540
from lonboard.
@kylebarron Do you see a role for PMTiles here? We've been very happy with PMTiles for leaflet-based maps (e.g. via folium-pmtiles, leafmap, rendered with maplibre) but from what I can tell it's not supported in deck.gl.
from lonboard.
deck.gl supports any tiled data source, as long as you provide a callback for how to load each tile. So for a JS application using deck.gl, supporting PMTiles is not too hard.
The harder part is styling the data, especially depending on the trajectory of the data, and specifically whether data goes straight from server to browser or whether it passes through Python.
The part about pydeck that I dislike the most is that it featured a custom, hacky string domain-specific language for how to run JS code to style the input data. As I write in the internals doc, one of the main goals of lonboard is to support data scientists working with data already in Python. The map's styling could then be done in Python rather than in JS.
For comparison, folium-pmtiles, which uses protomaps-leaflet, looks like it implements the Mapbox Style Specification, so it has a way to apply a declarative JSON style to the data fully on the client.
This issue was originally focused on dynamically tiling data from Python to be sent to JS for visualization, but where the data already lived in Python, or at least was being proxied through Python. We could also implement a PMTiles proxy that would load tiles through Python, and give users the option of a callback to generate usual python layers
from lonboard.
Awesome, thanks! Definitely agree with the sentiments here, 💯 on supporting data scientists who are already in Python and would like to do styling from python and not JS. Like you say, this mostly works pretty well in folium-pmtiles because we can provide this information in JSON / dict
format, though I could wish that the support for deriving styles from the data attributes was more pythonic than {"fill-color": ["get", "color"])
. otoh, that is easy to wrap around, and mapbox / maplibre styling is very flexible and well documented.
from lonboard.
Related Issues (20)
- GeoArrowLayer
- Use `ravel()` instead of `flatten()`
- Invert layers order in `split_mixed_gdf` function HOT 2
- Google Colab crashes for large datasets HOT 4
- Understanding fly_to() and set_view_state() HOT 3
- Automated widget testing
- [BUG] Error in reprojection from GeoArrow stream with non-WGS84 crs and non-nullable coords HOT 1
- Add test for fixed GeoArrow reprojection with GeoPandas 1.0
- [BUG] None default get_line_color in PolygonLayer not respected HOT 4
- [EPIC] Support for ColumnLayer (extruded point values) HOT 3
- feature: add support to zoom into a specific layer HOT 2
- [BUG] Layer Attribution Option HOT 2
- Rename "other args" to "keyword args" in docstrings
- Move griffe-inherited-docstrings into pyproject.toml docs section HOT 1
- Add CI check for mkdocs build without warning
- Add layer control to permit opacity control
- [BUG] Maps not displaying in jupyter notebook HOT 1
- Why "Input being reprojected to EPSG:4326 CRS"? HOT 2
- Add ESLint HOT 4
- Easier deck.gl debugging for Lonboard issues
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lonboard.