lonboard icon indicating copy to clipboard operation
lonboard copied to clipboard

Validate geoarrow data type?

Open kylebarron opened this issue 1 year ago • 0 comments

This example silently renders nothing because the default numpy data type is int64, not float64. Setting dtype=np.float64 fixes rendering. We should have some sort of validation about the data type.

import numpy as np
from lonboard import ScatterplotLayer, Map
import pyarrow as pa

lon = np.array([1, 2, 3, 4])
lat = np.array([1, 2, 3, 4])

np_coords = np.column_stack([lon, lat])
flat_coords = pa.array(np_coords.ravel("C"))
points = pa.FixedSizeListArray.from_arrays(flat_coords, 2)
field = pa.field(
    "geometry", points.type, metadata={b"ARROW:extension:name": b"geoarrow.point"}
)
table = pa.Table.from_arrays([points], schema=pa.schema([field]))

layer = ScatterplotLayer(table=table, get_fill_color=[255, 0, 0], radius_min_pixels=10)
m = Map(layer)
m
layer.radius_min_pixels = 10
layer.get_fill_color = [255, 0, 0]
pa.table( layer.table)

kylebarron avatar Aug 20 '24 21:08 kylebarron