Skip to content

Commit

Permalink
fix(heatmap): import datashade after start to make --num_procs work
Browse files Browse the repository at this point in the history
  • Loading branch information
nritsche committed Nov 2, 2020
1 parent b3437be commit 9669ead
Showing 1 changed file with 12 additions and 5 deletions.
17 changes: 12 additions & 5 deletions bondia/plot/heatmap.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
import logging
import param

from holoviews.operation.datashader import datashade, rasterize

from .plot import BondiaPlot


Expand Down Expand Up @@ -30,18 +28,27 @@ class HeatMapPlot(BondiaPlot, param.Parameterized):
# parameters
transpose = param.Boolean(default=True)
logarithmic_colorscale = param.Boolean(default=False)
serverside_rendering = param.Selector(
objects=[None, rasterize, datashade], default=rasterize
)
serverside_rendering = param.Selector()
colormap_range = param.Range(constant=False)

def __init__(self, name: str, activated: bool = True, **params):
BondiaPlot.__init__(self, name, activated)
param.Parameterized.__init__(self, **params)
self.colormap_range = self.zlim if hasattr(self, "zlim") else (-5, 5)

# TODO: for some reason this has to be done before panel.serve
# See https://discourse.holoviz.org/t/panel-serve-with-num-procs-breaks-if-importing-datashade/1353
from holoviews.operation.datashader import datashade, rasterize

self.param["serverside_rendering"].objects = [None, rasterize, datashade]
self.param["serverside_rendering"].default = rasterize

@param.depends("serverside_rendering", watch=True)
def update_serverside_rendering(self):
# TODO: for some reason this has to be done before panel.serve
# See https://discourse.holoviz.org/t/panel-serve-with-num-procs-breaks-if-importing-datashade/1353
from holoviews.operation.datashader import datashade

# Disable colormap range selection if using datashader (because it uses auto values)
self.param["colormap_range"].constant = self.serverside_rendering == datashade

Expand Down

0 comments on commit 9669ead

Please sign in to comment.