From 6a7529bf41ba9381c7e46277522d247670f71d4b Mon Sep 17 00:00:00 2001 From: ATL2001 <35881864+ATL2001@users.noreply.github.com> Date: Thu, 17 Oct 2024 19:53:58 -0500 Subject: [PATCH 1/6] initial commit for tabel of contents --- lonboard/_layer.py | 5 + lonboard/controls.py | 243 +++++++++++++++++++++++++++++++++++++++- lonboard/types/layer.py | 1 + 3 files changed, 247 insertions(+), 2 deletions(-) diff --git a/lonboard/_layer.py b/lonboard/_layer.py index 3b4d35f3..1e2836c3 100644 --- a/lonboard/_layer.py +++ b/lonboard/_layer.py @@ -271,6 +271,11 @@ def _add_extension_traits(self, extensions: Sequence[BaseExtension]): for an example. """ + title = t.CUnicode("Layer", allow_none=False).tag(sync=True) + """ + The title of the layer. The title of the layer is visible in the table of + contents produced by the lonboard_map.make_TOC() method. + """ def default_geoarrow_viewport( table: Table, diff --git a/lonboard/controls.py b/lonboard/controls.py index bec97922..d2d09a40 100644 --- a/lonboard/controls.py +++ b/lonboard/controls.py @@ -1,12 +1,18 @@ from functools import partial -from typing import Sequence +from typing import List, Sequence +import ipywidgets import traitlets from ipywidgets import FloatRangeSlider from ipywidgets.widgets.trait_types import TypedTuple # Import from source to allow mkdocstrings to link to base class -from ipywidgets.widgets.widget_box import VBox +from ipywidgets.widgets.widget_box import HBox, VBox + +from lonboard.traits import ( + ColorAccessor, + FloatAccessor, +) class MultiRangeSlider(VBox): @@ -86,3 +92,236 @@ def callback(change, *, i: int): initial_values.append(child.value) super().__init__(children, value=initial_values, **kwargs) + + +def _rgb2hex(r: int, g: int, b: int) -> str: + """Converts an RGB color code values to hex.""" + return "#{:02x}{:02x}{:02x}".format(r, g, b) + + +def _hex2rgb(hex_color: str) -> List[int]: + """Converts a hex color code to RGB.""" + hex_color = hex_color.lstrip("#") + return list(int(hex_color[i : i + 2], 16) for i in (0, 2, 4)) + + +def _link_rgb_and_hex_traits( + rgb_object, rgb_trait_name, hex_object, hex_trait_name +) -> None: + """Makes links between two objects/traits that hold RBG and hex color codes.""" + + def handle_RGB_color_change(change: traitlets.utils.bunch.Bunch) -> None: + new_color_RGB = change.get("new")[0:3] + new_color_hex = _rgb2hex(*new_color_RGB) + hex_object.set_trait(hex_trait_name, new_color_hex) + + rgb_object.observe(handle_RGB_color_change, rgb_trait_name, "change") + + def handle_hex_color_change(change: traitlets.utils.bunch.Bunch) -> None: + new_color_hex = change.get("new") + new_color_rgb = _hex2rgb(new_color_hex) + rgb_object.set_trait(rgb_trait_name, new_color_rgb) + + hex_object.observe(handle_hex_color_change, hex_trait_name, "change") + + +def _make_TOC_item(layer, with_layer_controls: bool = True) -> VBox: + """ + Returns an ipywidgets VBox to be used by a table of contents based on the input + Lonboard layer. + + If with_layer_controls is True, the VBox will contain a toggle for the layer's + visibility and a button that when clicked will display widgets linked to the layers + traits so they can be modified. + + If with_layer_controls is False, the VBox will only contain a toggle for the layer's + visibility. + """ + visibility_w = ipywidgets.Checkbox( + value=True, description="", disabled=False, indent=False + ) + visibility_w.layout = ipywidgets.Layout(width="196px") + ipywidgets.dlink((layer, "title"), (visibility_w, "description")) + ipywidgets.link((layer, "visible"), (visibility_w, "value")) + + if with_layer_controls is False: + # with_layer_controls is False return the visibility widget within a VBox + # within a HBox to maintain consistency with the TOC item that would be returned + # if with_layer_controls were True + TOC_item = VBox([HBox([visibility_w])]) + else: + # with_layer_controls is True, make a button that will display the layer props, + # and widgets for the layer properties. Instead of making the trait controlling + # widgets in a random order, make lists so we can make the color widgets at the + # top, followed by the boolean widgets and the number widgets so the layer props + # display has some sort of order + color_widgets = [] + bool_widgets = [] + number_widgets = [] + + ## style and layout to keep property wigets consistent + prop_style = {"description_width": "initial"} + prop_layout = ipywidgets.Layout(width="224px") + for trait_name, trait in layer.traits().items(): + ## Guard against making widgets for protected traits + if trait_name.startswith("_"): + continue + # Guard against making widgets for things we've determined we should not + # make widgets to change + if trait_name in ["visible", "selected_index", "title"]: + continue + + ## Make a human readable name from the trait + trait_description = trait_name.replace("get_", "").replace("_", " ").title() + + if isinstance(trait, ColorAccessor): + if getattr(layer, trait_name) is not None: + hex_color = _rgb2hex(*getattr(layer, trait_name)) + else: + hex_color = "#000000" + color_picker_w = ipywidgets.ColorPicker( + description=trait_description, layout=prop_layout, value=hex_color + ) + _link_rgb_and_hex_traits(layer, trait_name, color_picker_w, "value") + color_widgets.append(color_picker_w) + + if ( + isinstance(trait, traitlets.traitlets.Bool) + and getattr(layer, trait_name) is not None + ): + bool_w = ipywidgets.Checkbox( + value=True, + description=trait_description, + disabled=False, + style=prop_style, + layout=prop_layout, + ) + ipywidgets.link((layer, trait_name), (bool_w, "value")) + bool_widgets.append(bool_w) + + if ( + isinstance(trait, (FloatAccessor, traitlets.traitlets.Float)) + and getattr(layer, trait_name) is not None + ): + min_val = None + if hasattr(trait, "min"): + min_val = trait.min + + max_val = None + if hasattr(trait, "max"): + max_val = trait.max + if max_val == float("inf"): + max_val = 999999999999 + + if max_val is not None and max_val is not None: + ## min/max are not None, make a bounded float + float_w = ipywidgets.BoundedFloatText( + value=True, + description=trait_description, + disabled=False, + indent=True, + min=min_val, + max=max_val, + style=prop_style, + layout=prop_layout, + ) + else: + ## min/max are None, use normal flaot, not bounded. + float_w = ipywidgets.FloatText( + value=True, + description=trait_description, + disabled=False, + indent=True, + layout=prop_layout, + ) + ipywidgets.link((layer, trait_name), (float_w, "value")) + number_widgets.append(float_w) + + if ( + isinstance(trait, (traitlets.traitlets.Int)) + and getattr(layer, trait_name) is not None + ): + min_val = None + if hasattr(trait, "min"): + min_val = trait.min + + max_val = None + if hasattr(trait, "max"): + max_val = trait.max + if max_val == float("inf"): + max_val = 999999999999 + + if max_val is not None and max_val is not None: + ## min/max are not None, make a bounded int + float_w = ipywidgets.BoundedIntText( + value=True, + description=trait_description, + disabled=False, + indent=True, + min=min_val, + max=max_val, + style=prop_style, + layout=prop_layout, + ) + else: + ## min/max are None, use normal int, not bounded. + float_w = ipywidgets.IntText( + value=True, + description=trait_description, + disabled=False, + indent=True, + style=prop_style, + layout=prop_layout, + ) + ipywidgets.link((layer, trait_name), (float_w, "value")) + number_widgets.append(float_w) + + layer_props_title = ipywidgets.HTML(value=f"{layer.title} Properties") + props_box_layout = ipywidgets.Layout( + border="solid 3px #EEEEEE", width="240px", display="none" + ) + props_widgets = ( + [layer_props_title] + color_widgets + bool_widgets + number_widgets + ) + layer_props_box = VBox(props_widgets, layout=props_box_layout) + + props_button = ipywidgets.Button(description="", icon="gear") + props_button.layout.width = "36px" + + def on_props_button_click(_: ipywidgets.widgets.widget_button.Button) -> None: + if layer_props_box.layout.display != "none": + layer_props_box.layout.display = "none" + else: + layer_props_box.layout.display = "flex" + + props_button.on_click(on_props_button_click) + TOC_item = VBox([HBox([visibility_w, props_button]), layer_props_box]) + return TOC_item + + +def make_TOC(lonboard_map, with_layer_controls: bool = True) -> VBox: + """Function to make create a table of contents (TOC) based on a Lonboard Map. + + The TOC will contain a checkbox for each layer, which controls layer visibility in + the Lonboard map. + + If `with_layer_controls` is True, each layer in the TOC will also have a settings + button, which when clicked will expose properties for the layer which can be + changed. + + If a layer's property is None when the TOC is created, a widget controling that + property will not be created. + """ + toc_items = [ + _make_TOC_item(layer, with_layer_controls) for layer in lonboard_map.layers + ] + toc = VBox(toc_items) + + # Observe the map's layers trait, so additions/removals of layers will result in + #the TOC recreating itself to reflect the map's current state + def handle_layer_change(change: traitlets.utils.bunch.Bunch) -> None: + toc_items = [_make_TOC_item(layer) for layer in lonboard_map.layers] + toc.children = toc_items + + lonboard_map.observe(handle_layer_change, "layers", "change") + return diff --git a/lonboard/types/layer.py b/lonboard/types/layer.py index f30f88d1..1454aeb0 100644 --- a/lonboard/types/layer.py +++ b/lonboard/types/layer.py @@ -78,6 +78,7 @@ class BaseLayerKwargs(TypedDict, total=False): visible: bool opacity: IntFloat auto_highlight: bool + title: str class BitmapLayerKwargs(BaseLayerKwargs, total=False): From de147e8088b67d9bb134ab0301fbba02c3bbd9a3 Mon Sep 17 00:00:00 2001 From: ATL2001 <35881864+ATL2001@users.noreply.github.com> Date: Thu, 17 Oct 2024 19:55:49 -0500 Subject: [PATCH 2/6] table of contents example notebook --- examples/lonboard-table-of-contents.ipynb | 190 ++++++++++++++++++++++ 1 file changed, 190 insertions(+) create mode 100644 examples/lonboard-table-of-contents.ipynb diff --git a/examples/lonboard-table-of-contents.ipynb b/examples/lonboard-table-of-contents.ipynb new file mode 100644 index 00000000..340e6a74 --- /dev/null +++ b/examples/lonboard-table-of-contents.ipynb @@ -0,0 +1,190 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "a9528b4f-0597-4eba-a618-35cdb738a685", + "metadata": {}, + "source": [ + "# Lonboard Table of Contents\n", + "\n", + "This notebook demonstrates using the Lonboard controls to make a table of contents from a Lonboard map." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "2c1be9b5-feea-4072-b356-228dfdb86331", + "metadata": {}, + "outputs": [], + "source": [ + "import shapely\n", + "import geopandas as gpd\n", + "\n", + "import lonboard" + ] + }, + { + "cell_type": "markdown", + "id": "8d9af9fa-5e4c-48cf-88fa-031dd0b3f78e", + "metadata": {}, + "source": [ + "#### Make some simple dataframes and layers\n", + "\n", + "This notebook is not to demonstrate the speed of Lonboard, rather, it is simply to show the table of contents. Some simple geodataframes with one row each will be sufficient to make layers to add to a map." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "00ae8b4b-ea2d-42d2-8ce0-c17372b08fd1", + "metadata": {}, + "outputs": [], + "source": [ + "point = shapely.Point(-90, 38.8)\n", + "point_df = gpd.GeoDataFrame(\n", + " [point],\n", + " columns=[\"geometry\"],\n", + " geometry=\"geometry\",\n", + " crs=4326\n", + ")\n", + "point_layer = lonboard.ScatterplotLayer.from_geopandas(\n", + " point_df,\n", + " title=\"Point Layer\",\n", + " radius_min_pixels=10,\n", + " get_fill_color=[255, 255, 0]\n", + ")\n", + "\n", + "line = shapely.LineString([[-91, 38], [-90, 39]])\n", + "line_df = gpd.GeoDataFrame(\n", + " [line],\n", + " columns=[\"geometry\"],\n", + " geometry=\"geometry\",\n", + " crs=4326,\n", + ")\n", + "line_layer = lonboard.PathLayer.from_geopandas(\n", + " line_df,\n", + " title=\"Line Layer\",\n", + " width_min_pixels=10,\n", + " get_color=[124, 124, 124]\n", + ")\n", + "\n", + "polygon = shapely.Polygon([[-91, 38], [-90, 39], [-89, 38.5]])\n", + "polygon_df = gpd.GeoDataFrame(\n", + " [polygon],\n", + " columns=[\"geometry\"],\n", + " geometry=\"geometry\",\n", + " crs=4326\n", + ")\n", + "polygon_layer = lonboard.PolygonLayer.from_geopandas(\n", + " polygon_df,\n", + " title=\"Polygon Layer\"\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "f2c7c703-fbd1-4084-98fc-b755ece60f72", + "metadata": {}, + "source": [ + "#### Make the map with the polygon and line layers and then make a table of contents from the map\n", + "\n", + "The checkboxes in the table of contents toggle the layer's visibility.\n", + "\n", + "If you click the settings gear for a layer in the TOC, the layer's traits are exposed and can be changed by the user" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "345b2305-4a00-4adb-9117-bf2f3efb60eb", + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "2bcf1687e5854cd1837da4e277da38b1", + "version_major": 2, + "version_minor": 1 + }, + "text/plain": [ + "Map(custom_attribution='', layers=(PolygonLayer(table=arro3.core.Table\n", + "-----------\n", + "geometry: List(Field { name…" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "fa1470fcc4a54257bc6e5282aac72a23", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "VBox(children=(VBox(children=(HBox(children=(Checkbox(value=True, description='Polygon Layer', indent=False, l…" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "lonboard_map = lonboard.Map([polygon_layer, line_layer])\n", + "lonboard_toc = lonboard.controls.make_TOC(lonboard_map)\n", + "display(lonboard_map)\n", + "display(lonboard_toc)" + ] + }, + { + "cell_type": "markdown", + "id": "8ebcad27-da7d-44be-bf91-c1f6dadf24e2", + "metadata": {}, + "source": [ + "### Table of contents is reactive to changes\n", + "\n", + "If you add a layer to the map after it is created, the table of content will dynamically refresh itself and show the new layer" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "a82f2fb5-305b-47e8-9db9-30ed78d6a722", + "metadata": {}, + "outputs": [], + "source": [ + "lonboard_map.add_layer(point_layer)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "cce264ba-0426-4db2-81eb-c33cf01556dc", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "lonboard", + "language": "python", + "name": "lonboard" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.4" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From fb61a2d9d45b5e7f24d1ff3efcc48e92b0847e89 Mon Sep 17 00:00:00 2001 From: ATL2001 <35881864+ATL2001@users.noreply.github.com> Date: Thu, 17 Oct 2024 20:04:25 -0500 Subject: [PATCH 3/6] toc doc updates --- assets/table-of-contents.jpeg | Bin 0 -> 122073 bytes examples/index.md | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 assets/table-of-contents.jpeg diff --git a/assets/table-of-contents.jpeg b/assets/table-of-contents.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..bda1c03c024ed3da1d9316c6dab947b52319ae07 GIT binary patch literal 122073 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

0oDq4UD0)-M0LrF+}24av< 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 ## Integrations From f5177fbd4f93bcd6f0c316f6ce184d29657a02fd Mon Sep 17 00:00:00 2001 From: ATL2001 <35881864+ATL2001@users.noreply.github.com> Date: Thu, 17 Oct 2024 20:25:14 -0500 Subject: [PATCH 4/6] missed a space after the # --- lonboard/controls.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lonboard/controls.py b/lonboard/controls.py index d2d09a40..2eed1a86 100644 --- a/lonboard/controls.py +++ b/lonboard/controls.py @@ -318,7 +318,7 @@ def make_TOC(lonboard_map, with_layer_controls: bool = True) -> VBox: toc = VBox(toc_items) # Observe the map's layers trait, so additions/removals of layers will result in - #the TOC recreating itself to reflect the map's current state + # the TOC recreating itself to reflect the map's current state def handle_layer_change(change: traitlets.utils.bunch.Bunch) -> None: toc_items = [_make_TOC_item(layer) for layer in lonboard_map.layers] toc.children = toc_items From 06879a5e06504837b0e3946c46584fc38cf66560 Mon Sep 17 00:00:00 2001 From: ATL2001 <35881864+ATL2001@users.noreply.github.com> Date: Thu, 17 Oct 2024 20:35:01 -0500 Subject: [PATCH 5/6] corrected docstring for title trait --- lonboard/_layer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lonboard/_layer.py b/lonboard/_layer.py index 1e2836c3..ea1934b3 100644 --- a/lonboard/_layer.py +++ b/lonboard/_layer.py @@ -274,7 +274,7 @@ def _add_extension_traits(self, extensions: Sequence[BaseExtension]): title = t.CUnicode("Layer", allow_none=False).tag(sync=True) """ The title of the layer. The title of the layer is visible in the table of - contents produced by the lonboard_map.make_TOC() method. + contents produced by the lonboard.controls.make_TOC() function. """ def default_geoarrow_viewport( From ff8015d100ad3bc29e61f218d34c9a5b288d589c Mon Sep 17 00:00:00 2001 From: ATL2001 <35881864+ATL2001@users.noreply.github.com> Date: Thu, 17 Oct 2024 20:42:32 -0500 Subject: [PATCH 6/6] adding extra blank line --- lonboard/_layer.py | 1 + 1 file changed, 1 insertion(+) diff --git a/lonboard/_layer.py b/lonboard/_layer.py index ea1934b3..a5ec24c3 100644 --- a/lonboard/_layer.py +++ b/lonboard/_layer.py @@ -277,6 +277,7 @@ def _add_extension_traits(self, extensions: Sequence[BaseExtension]): contents produced by the lonboard.controls.make_TOC() function. """ + def default_geoarrow_viewport( table: Table, ) -> Optional[Tuple[Bbox, WeightedCentroid]]: