Map
As developers edit UDFs in the Code Editor and explore data, they can receive immediate visual feedback on how the code's transformations affect the data.
Geospatial data
Fused will render gpd.GeoDataFrame
, gpd.GeoSeries
, and shapely geometry
UDF outputs as geometries on the map if their CRS is EPSG:4326
. If the CRS differs, Fused will make a best-effort to project and render the geometries correctly.
To render array (raster) objects on the map, they must be uint8
and define their spatial extent. Objects like xarray.DataArray
already contain spatial metadata. The spatial extent of arrays without spatial metadata, like numpy.ndarray
, can be specified with a geometry object or an array bounds as [xmin, ymin, xmax, ymax]
. If the bounds are not present, they default to (-180, -90, 180, 90)
.
return np.array([[…], […]]), [xmin, ymin, xmax, ymax]
For UDFs that return map Tiles, Fused runs the UDF for only the Tiles in the viewport. This enables efficient analysis on a fraction of a dataset.
Map controls
The map can be panned by dragging the viewport, zoomed in and out, and rotated with CMD
+ Click + drag.
The top of the map has controls to interact with the viewport. These include an address search bar, a basemap selector, a screenshot button, a fullscreen toggle, and a dropdown to freeze, resume, or reset UDF execution.
Debug
Clicking a rendered feature enters debug mode. Pressing "Escape" or clicking "Clear debug selection" at the bottom of the map exits debug mode.
When data renders successfully on the map, clicking or hovering on it shows attributes for selected pixels or geometries. When data doesn't render, clicking errored tiles shows error messages and debugging information. Additional debugging information can be found in the Results pane.