From 130087cc1f493a53ebac171d2434dee8ad866afd Mon Sep 17 00:00:00 2001 From: Oliver Lopez Date: Fri, 4 Oct 2024 05:53:32 +0300 Subject: [PATCH] Support for custom colormaps (#223) * Handle serialization and deserialization of Colormap and lists of colors. * Add List[str] * Truthy check * Linting * Add validation test * Handle colormaps instances * Fix truthy issue --------- Co-authored-by: Bane Sullivan --- localtileserver/client.py | 18 +++++++++++++--- localtileserver/tiler/handler.py | 20 +++++++++++++++++- localtileserver/widgets.py | 3 ++- .../test_custom_colormap[colormap0-None].png | Bin 0 -> 53555 bytes .../test_custom_colormap[colormap1-2].png | Bin 0 -> 51478 bytes tests/test_rendering.py | 19 +++++++++++++++++ 6 files changed, 55 insertions(+), 5 deletions(-) create mode 100644 tests/baseline/test_custom_colormap[colormap0-None].png create mode 100644 tests/baseline/test_custom_colormap[colormap1-2].png diff --git a/localtileserver/client.py b/localtileserver/client.py index f9725f32..bdaa4fe4 100644 --- a/localtileserver/client.py +++ b/localtileserver/client.py @@ -1,8 +1,10 @@ from collections.abc import Iterable +import json import logging import pathlib from typing import List, Optional, Union +from matplotlib.colors import Colormap, ListedColormap import rasterio import requests from rio_tiler.io import Reader @@ -416,7 +418,7 @@ def create_url(self, path: str, client: bool = False): def get_tile_url( self, indexes: Optional[List[int]] = None, - colormap: Optional[str] = None, + colormap: Optional[Union[str, Colormap, List[str]]] = None, vmin: Optional[Union[float, List[float]]] = None, vmax: Optional[Union[float, List[float]]] = None, nodata: Optional[Union[int, float]] = None, @@ -446,8 +448,18 @@ def get_tile_url( if indexes is not None: params["indexes"] = indexes if colormap is not None: - # make sure palette is valid - palette_valid_or_raise(colormap) + if isinstance(colormap, ListedColormap): + colormap = json.dumps([c for c in colormap.colors]) + elif isinstance(colormap, Colormap): + colormap = json.dumps( + {k: tuple(v.tolist()) for k, v in enumerate(colormap(range(256), 1, 1))} + ) + elif isinstance(colormap, list): + colormap = json.dumps(colormap) + else: + # make sure palette is valid + palette_valid_or_raise(colormap) + params["colormap"] = colormap if vmin is not None: if isinstance(vmin, Iterable) and not isinstance(indexes, Iterable): diff --git a/localtileserver/tiler/handler.py b/localtileserver/tiler/handler.py index d1949772..1e0af982 100644 --- a/localtileserver/tiler/handler.py +++ b/localtileserver/tiler/handler.py @@ -1,7 +1,9 @@ """Methods for working with images.""" +import json import pathlib from typing import Dict, List, Optional, Tuple, Union +from matplotlib.colors import Colormap, LinearSegmentedColormap, ListedColormap import numpy as np import rasterio from rasterio.enums import ColorInterp @@ -150,7 +152,23 @@ def _render_image( colormap: Optional[str] = None, img_format: str = "PNG", ): - colormap = cmap.get(colormap) if colormap else None + if colormap in cmap.list(): + colormap = cmap.get(colormap) + elif isinstance(colormap, ListedColormap): + c = LinearSegmentedColormap.from_list("", colormap.colors, N=256) + colormap = {k: tuple(v) for k, v in enumerate(c(range(256), 1, 1))} + elif isinstance(colormap, Colormap): + colormap = {k: tuple(v) for k, v in enumerate(colormap(range(256), 1, 1))} + elif colormap: + c = json.loads(colormap) + if isinstance(c, list): + c = LinearSegmentedColormap.from_list("", c, N=256) + colormap = {k: tuple(v) for k, v in enumerate(c(range(256), 1, 1))} + else: + colormap = {} + for key, value in c.items(): + colormap[int(key)] = tuple(value) + if ( not colormap and len(indexes) == 1 diff --git a/localtileserver/widgets.py b/localtileserver/widgets.py index 06863b5a..b33a1b3e 100644 --- a/localtileserver/widgets.py +++ b/localtileserver/widgets.py @@ -3,6 +3,7 @@ from typing import List, Optional, Union import warnings +from matplotlib.colors import Colormap import rasterio from localtileserver.client import TileClient, get_or_create_tile_client @@ -23,7 +24,7 @@ def get_leaflet_tile_layer( port: Union[int, str] = "default", debug: bool = False, indexes: Optional[List[int]] = None, - colormap: Optional[str] = None, + colormap: Optional[Union[str, Colormap, List[str]]] = None, vmin: Optional[Union[float, List[float]]] = None, vmax: Optional[Union[float, List[float]]] = None, nodata: Optional[Union[int, float]] = None, diff --git a/tests/baseline/test_custom_colormap[colormap0-None].png b/tests/baseline/test_custom_colormap[colormap0-None].png new file mode 100644 index 0000000000000000000000000000000000000000..6dfbf8113d3194637caab371a9ce2c40c58165a9 GIT binary patch literal 53555 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 literal 0 HcmV?d00001 diff --git a/tests/test_rendering.py b/tests/test_rendering.py index bf3cb403..685bf6b9 100644 --- a/tests/test_rendering.py +++ b/tests/test_rendering.py @@ -1,3 +1,4 @@ +from matplotlib.colors import ListedColormap import pytest from .utilities import get_content @@ -56,6 +57,24 @@ def test_tile_colormap(bahamas, compare, colormap, indexes): compare(direct_content) +@pytest.mark.parametrize( + "colormap,indexes", + [ + (ListedColormap(["red", "blue"]), None), + (ListedColormap(["blue", "green"]), 2), + ], +) +def test_custom_colormap(bahamas, compare, colormap, indexes): + # Get a tile over the REST API + tile_url = bahamas.get_tile_url(colormap=colormap, indexes=indexes).format(z=8, x=72, y=110) + rest_content = get_content(tile_url) + # Get tile directly + direct_content = bahamas.tile(z=8, x=72, y=110, colormap=colormap, indexes=indexes) + # Make sure they are the same + assert rest_content == direct_content + compare(direct_content) + + @pytest.mark.parametrize("vmin", [100, [100, 200, 250]]) def test_tile_vmin(bahamas, compare, vmin): url = bahamas.get_tile_url(