hvplot icon indicating copy to clipboard operation
hvplot copied to clipboard

Interactive Datashader + Holoviews + Dask Plot does not Update in JupyterLab or Notebook

Open MordicusEtCubitus opened this issue 2 years ago • 5 comments

Since a few months I'm no more able to run properly Datashader introduction notebook: https://datashader.org/getting_started/Introduction.html

Once the first display is done, datashader plot is no more updated in jupyterlab or jupyter notebook Here is my running version with tljh:

jupyter --version
Selected Jupyter core packages...
IPython          : 8.15.0
ipykernel        : 6.25.2
ipywidgets       : 8.1.1
jupyter_client   : 8.3.1
jupyter_core     : 5.3.2
jupyter_server   : 2.7.3
jupyterlab       : 4.0.6
nbclient         : 0.8.0
nbconvert        : 7.8.0
nbformat         : 5.9.2
notebook         : not installed
qtconsole        : not installed
traitlets        : 5.10.1

I still get the notebook version running properly (but not lab) in this configuration:

jupyter --version
Selected Jupyter core packages...
IPython          : 8.10.0
ipykernel        : 6.21.2
ipywidgets       : 7.7.3
jupyter_client   : 8.0.3
jupyter_core     : 5.2.0
jupyter_server   : 2.3.0
jupyterlab       : 3.6.1
nbclient         : 0.5.13
nbconvert        : 6.5.3
nbformat         : 5.7.3
notebook         : 6.5.2
qtconsole        : not installed
traitlets        : 5.9.0

Here is how I create my Python environment:

mamba create --name TheEnv  python=3.11 -y
mamba activate TheEnv
mamba install numpy pandas scipy scikit-learn matplotlib bokeh dask ipython ipykernel ipywidgets -y
mamba install nodejs ipyvolume -y
mamba install numba folium netcdf4 datashader xarray pytables h5py -y
mamba install -c plotly plotly -y
mamba install geocoder seaborn -y
mamba install graphviz python-graphviz -y 
mamba install distributed ipympl jupyterlab geopandas -y
mamba install geoviews hvplot cartopy yt -y

I've also the issue with environments created by rapidsai or any other.

If you can help, I'll will be very pleased ! Thanks in advance !

Here is another notebook example with same issue. DatashaderIssue.ipynb.zip

MordicusEtCubitus avatar Sep 28 '23 22:09 MordicusEtCubitus

Your two list of dependencies are identical, I assume this is a mistake?

Anyway, please can you post your full list of dependencies.

ianthomas23 avatar Oct 13 '23 13:10 ianthomas23

Yes it was a mistake, it has been corrected.

Below an example of code with a dask dataframe (in persist mode) that only work with jupyter notebook (not lab) with second configuration

df.hvplot.points(x="longitude"
          , y="latitude"
          , geo=True
          , tiles=True # 'ESRI'
          , datashade=True
          , rasterize=True
          , width=850, height=500
          , cmap='fire')

MordicusEtCubitus avatar Oct 23 '23 19:10 MordicusEtCubitus

And the working configuration in notebook but not lab:

mamba env export --from-history
name: JBook
channels:
  - conda-forge
dependencies:
  - python=3.10
  - jupytext
  - jupyter-book
  - jupyterlab
  - ipywidgets
  - ipykernel
  - ca-certificates
  - certifi
  - openssl
  - nodejs
  - pandas
  - matplotlib
  - datashader
  - rise
  - streamlit
  - mypy

With full details:

mamba env export 
name: JBook
channels:
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1=conda_forge
  - _openmp_mutex=4.5=2_gnu
  - accessible-pygments=0.0.4=pyhd8ed1ab_0
  - aiofiles=22.1.0=pyhd8ed1ab_0
  - aiosqlite=0.18.0=pyhd8ed1ab_0
  - alabaster=0.7.13=pyhd8ed1ab_0
  - alsa-lib=1.2.8=h166bdaf_0
  - altair=5.0.1=pyhd8ed1ab_0
  - anyio=3.6.2=pyhd8ed1ab_0
  - argon2-cffi=21.3.0=pyhd8ed1ab_0
  - argon2-cffi-bindings=21.2.0=py310h5764c6d_3
  - arrow-cpp=11.0.0=ha770c72_16_cpu
  - astor=0.8.1=pyh9f0ad1d_0
  - asttokens=2.2.1=pyhd8ed1ab_0
  - attr=2.5.1=h166bdaf_1
  - attrs=21.4.0=pyhd8ed1ab_0
  - aws-c-auth=0.6.26=h2c7c9e7_6
  - aws-c-cal=0.5.26=h71eb795_0
  - aws-c-common=0.8.17=hd590300_0
  - aws-c-compression=0.2.16=h4f47f36_6
  - aws-c-event-stream=0.2.20=h69ce273_6
  - aws-c-http=0.7.7=h7b8353a_3
  - aws-c-io=0.13.21=h2c99d58_4
  - aws-c-mqtt=0.8.6=h3a1964a_15
  - aws-c-s3=0.2.8=h0933b68_4
  - aws-c-sdkutils=0.1.9=h4f47f36_1
  - aws-checksums=0.1.14=h4f47f36_6
  - aws-crt-cpp=0.19.9=h85076f6_5
  - aws-sdk-cpp=1.10.57=hf40e4db_10
  - babel=2.11.0=pyhd8ed1ab_0
  - backcall=0.2.0=pyh9f0ad1d_0
  - backports=1.0=pyhd8ed1ab_3
  - backports.functools_lru_cache=1.6.4=pyhd8ed1ab_0
  - base58=2.1.1=pyhd8ed1ab_0
  - beautifulsoup4=4.11.2=pyha770c72_0
  - bleach=6.0.0=pyhd8ed1ab_0
  - blinker=1.6.2=pyhd8ed1ab_0
  - boto3=1.26.144=pyhd8ed1ab_0
  - botocore=1.29.144=pyhd8ed1ab_0
  - brotli=1.0.9=h166bdaf_8
  - brotli-bin=1.0.9=h166bdaf_8
  - brotlipy=0.7.0=py310h5764c6d_1005
  - bzip2=1.0.8=h7f98852_4
  - c-ares=1.19.1=hd590300_0
  - ca-certificates=2023.5.7=hbcca054_0
  - cachetools=5.3.0=pyhd8ed1ab_0
  - cairo=1.16.0=ha61ee94_1014
  - certifi=2023.5.7=pyhd8ed1ab_0
  - cffi=1.15.1=py310h255011f_3
  - charset-normalizer=2.1.1=pyhd8ed1ab_0
  - click=8.0.4=py310hff52083_0
  - click-completion=0.5.2=py310hff52083_5
  - click-log=0.4.0=pyhd8ed1ab_0
  - cloudpickle=2.2.1=pyhd8ed1ab_0
  - colorama=0.4.6=pyhd8ed1ab_0
  - colorcet=3.0.1=pyhd8ed1ab_0
  - comm=0.1.2=pyhd8ed1ab_0
  - contourpy=1.0.7=py310hdf3cbec_0
  - cryptography=39.0.1=py310h34c0648_0
  - cycler=0.11.0=pyhd8ed1ab_0
  - dask-core=2023.3.2=pyhd8ed1ab_0
  - dataclasses=0.8=pyhc8e2a94_3
  - datashader=0.14.4=pyh1a96a4e_0
  - datashape=0.5.4=py_1
  - dbus=1.13.6=h5008d03_3
  - debugpy=1.6.6=py310heca2aa9_0
  - decorator=5.1.1=pyhd8ed1ab_0
  - defusedxml=0.7.1=pyhd8ed1ab_0
  - docutils=0.17.1=py310hff52083_3
  - entrypoints=0.4=pyhd8ed1ab_0
  - executing=1.2.0=pyhd8ed1ab_0
  - expat=2.5.0=hcb278e6_1
  - fftw=3.3.10=nompi_hf0379b8_106
  - flit-core=3.8.0=pyhd8ed1ab_0
  - font-ttf-dejavu-sans-mono=2.37=hab24e00_0
  - font-ttf-inconsolata=3.000=h77eed37_0
  - font-ttf-source-code-pro=2.038=h77eed37_0
  - font-ttf-ubuntu=0.83=hab24e00_0
  - fontconfig=2.14.2=h14ed4e7_0
  - fonts-conda-ecosystem=1=0
  - fonts-conda-forge=1=0
  - fonttools=4.39.3=py310h1fa729e_0
  - freetype=2.12.1=hca18f0e_1
  - fsspec=2023.3.0=pyhd8ed1ab_1
  - gettext=0.21.1=h27087fc_0
  - gflags=2.2.2=he1b5a44_1004
  - gitdb=4.0.10=pyhd8ed1ab_0
  - gitpython=3.1.30=pyhd8ed1ab_0
  - glib=2.74.1=h6239696_1
  - glib-tools=2.74.1=h6239696_1
  - glog=0.6.0=h6f12383_0
  - graphite2=1.3.13=h58526e2_1001
  - greenlet=2.0.2=py310heca2aa9_0
  - gst-plugins-base=1.22.0=h4243ec0_2
  - gstreamer=1.22.0=h25f0c4b_2
  - gstreamer-orc=0.4.33=h166bdaf_0
  - harfbuzz=6.0.0=h8e241bc_0
  - icu=70.1=h27087fc_0
  - idna=3.4=pyhd8ed1ab_0
  - imagesize=1.4.1=pyhd8ed1ab_0
  - importlib-metadata=6.0.0=pyha770c72_0
  - importlib_metadata=6.0.0=hd8ed1ab_0
  - importlib_resources=5.10.2=pyhd8ed1ab_0
  - ipykernel=6.21.2=pyh210e3f2_0
  - ipython=8.10.0=pyh41d4057_0
  - ipython_genutils=0.2.0=py_1
  - ipywidgets=7.7.3=pyhd8ed1ab_0
  - jack=1.9.22=h11f4161_0
  - jedi=0.18.2=pyhd8ed1ab_0
  - jinja2=3.1.2=pyhd8ed1ab_1
  - jmespath=1.0.1=pyhd8ed1ab_0
  - json5=0.9.5=pyh9f0ad1d_0
  - jsonschema=4.17.3=pyhd8ed1ab_0
  - jupyter-book=0.15.1=pyhd8ed1ab_0
  - jupyter-cache=0.6.1=pyhd8ed1ab_0
  - jupyter-server-mathjax=0.2.6=pyh5bfe37b_1
  - jupyter-sphinx=0.3.2=pyhd8ed1ab_1
  - jupyter_client=8.0.3=pyhd8ed1ab_0
  - jupyter_core=5.2.0=py310hff52083_0
  - jupyter_events=0.5.0=pyhd8ed1ab_1
  - jupyter_server=2.3.0=pyhd8ed1ab_0
  - jupyter_server_fileid=0.6.0=pyhd8ed1ab_0
  - jupyter_server_terminals=0.4.4=pyhd8ed1ab_1
  - jupyter_server_ydoc=0.6.1=pyhd8ed1ab_0
  - jupyter_ydoc=0.2.2=pyhd8ed1ab_0
  - jupyterlab=3.6.1=pyhd8ed1ab_0
  - jupyterlab_pygments=0.2.2=pyhd8ed1ab_0
  - jupyterlab_server=2.19.0=pyhd8ed1ab_0
  - jupyterlab_widgets=1.1.2=pyhd8ed1ab_0
  - jupytext=1.14.4=pyhcff175f_0
  - keyutils=1.6.1=h166bdaf_0
  - kiwisolver=1.4.4=py310hbf28c38_1
  - krb5=1.20.1=h81ceb04_0
  - lame=3.100=h166bdaf_1003
  - latexcodec=2.0.1=pyh9f0ad1d_0
  - lcms2=2.15=haa2dc70_1
  - ld_impl_linux-64=2.40=h41732ed_0
  - lerc=4.0.0=h27087fc_0
  - libabseil=20230125.0=cxx17_hcb278e6_1
  - libarrow=11.0.0=h8dc56a0_16_cpu
  - libblas=3.9.0=16_linux64_openblas
  - libbrotlicommon=1.0.9=h166bdaf_8
  - libbrotlidec=1.0.9=h166bdaf_8
  - libbrotlienc=1.0.9=h166bdaf_8
  - libcap=2.67=he9d0100_0
  - libcblas=3.9.0=16_linux64_openblas
  - libclang=15.0.7=default_had23c3d_1
  - libclang13=15.0.7=default_h3e3d535_1
  - libcrc32c=1.1.2=h9c3ff4c_0
  - libcups=2.3.3=h36d4200_3
  - libcurl=8.1.2=h409715c_0
  - libdb=6.2.32=h9c3ff4c_0
  - libdeflate=1.18=h0b41bf4_0
  - libedit=3.1.20191231=he28a2e2_2
  - libev=4.33=h516909a_1
  - libevent=2.1.10=h28343ad_4
  - libexpat=2.5.0=hcb278e6_1
  - libffi=3.4.2=h7f98852_5
  - libflac=1.4.2=h27087fc_0
  - libgcc-ng=12.2.0=h65d4601_19
  - libgcrypt=1.10.1=h166bdaf_0
  - libgfortran-ng=12.2.0=h69a702a_19
  - libgfortran5=12.2.0=h337968e_19
  - libglib=2.74.1=h606061b_1
  - libgomp=12.2.0=h65d4601_19
  - libgoogle-cloud=2.8.0=hac9eb74_2
  - libgpg-error=1.46=h620e276_0
  - libgrpc=1.54.2=hcf146ea_0
  - libiconv=1.17=h166bdaf_0
  - libjpeg-turbo=2.1.5.1=h0b41bf4_0
  - liblapack=3.9.0=16_linux64_openblas
  - libllvm11=11.1.0=he0ac6c6_5
  - libllvm15=15.0.7=hadd5161_1
  - libnghttp2=1.52.0=h61bc06f_0
  - libnsl=2.0.0=h7f98852_0
  - libnuma=2.0.16=h0b41bf4_1
  - libogg=1.3.4=h7f98852_1
  - libopenblas=0.3.21=pthreads_h78a6416_3
  - libopus=1.3.1=h7f98852_1
  - libpng=1.6.39=h753d276_0
  - libpq=15.2=hb675445_0
  - libprotobuf=3.21.12=h3eb15da_0
  - libsndfile=1.2.0=hb75c966_0
  - libsodium=1.0.18=h36c2ea0_1
  - libsqlite=3.40.0=h753d276_0
  - libssh2=1.10.0=hf14f497_3
  - libstdcxx-ng=12.2.0=h46fd767_19
  - libsystemd0=253=h8c4010b_1
  - libthrift=0.18.1=h5e4af38_0
  - libtiff=4.5.0=ha587672_6
  - libtool=2.4.7=h27087fc_0
  - libudev1=253=h0b41bf4_1
  - libutf8proc=2.8.0=h166bdaf_0
  - libuuid=2.32.1=h7f98852_1000
  - libuv=1.44.2=h166bdaf_0
  - libvorbis=1.3.7=h9c3ff4c_0
  - libwebp-base=1.3.0=h0b41bf4_0
  - libxcb=1.13=h7f98852_1004
  - libxkbcommon=1.5.0=h79f4944_1
  - libxml2=2.10.3=h7463322_0
  - libxslt=1.1.37=h873f0b0_0
  - libzlib=1.2.13=h166bdaf_4
  - linkify-it-py=2.0.0=pyhd8ed1ab_0
  - llvmlite=0.39.1=py310h58363a5_1
  - locket=1.0.0=pyhd8ed1ab_0
  - lxml=4.9.2=py310hbdc0903_0
  - lz4-c=1.9.4=hcb278e6_0
  - markdown-it-py=1.1.0=pyhd8ed1ab_0
  - markupsafe=2.1.2=py310h1fa729e_0
  - matplotlib=3.7.1=py310hff52083_0
  - matplotlib-base=3.7.1=py310he60537e_0
  - matplotlib-inline=0.1.6=pyhd8ed1ab_0
  - mdit-py-plugins=0.4.0=pyhd8ed1ab_0
  - mistune=0.8.4=pyh1a96a4e_1006
  - mpg123=1.31.3=hcb278e6_0
  - multipledispatch=0.6.0=py_0
  - munkres=1.1.4=pyh9f0ad1d_0
  - mypy=1.4.1=py310h2372a71_0
  - mypy_extensions=1.0.0=pyha770c72_0
  - mysql-common=8.0.32=ha901b37_1
  - mysql-libs=8.0.32=hd7da12d_1
  - myst-nb=0.17.2=pyhd8ed1ab_0
  - myst-parser=0.18.1=pyhd8ed1ab_0
  - nbclassic=0.5.1=pyhd8ed1ab_0
  - nbclient=0.5.13=pyhd8ed1ab_0
  - nbconvert=6.5.3=pyhd8ed1ab_0
  - nbconvert-core=6.5.3=pyhd8ed1ab_0
  - nbconvert-pandoc=6.5.3=pyhd8ed1ab_0
  - nbdime=3.1.1=pyhd8ed1ab_0
  - nbformat=5.7.3=pyhd8ed1ab_0
  - ncurses=6.3=h27087fc_1
  - nest-asyncio=1.5.6=pyhd8ed1ab_0
  - nodejs=18.12.1=h8839609_0
  - notebook=6.5.2=pyha770c72_1
  - notebook-shim=0.2.2=pyhd8ed1ab_0
  - nspr=4.35=h27087fc_0
  - nss=3.89=he45b914_0
  - numba=0.56.4=py310ha5257ce_0
  - numpy=1.23.5=py310h53a5b5f_0
  - openjpeg=2.5.0=hfec8fc6_2
  - openssl=3.1.1=hd590300_1
  - orc=1.8.3=hfdbbad2_0
  - packaging=23.0=pyhd8ed1ab_0
  - pandas=1.5.3=py310h9b08913_1
  - pandoc=2.19.2=h32600fe_1
  - pandocfilters=1.5.0=pyhd8ed1ab_0
  - param=1.13.0=pyh1a96a4e_0
  - parquet-cpp=1.5.1=2
  - parso=0.8.3=pyhd8ed1ab_0
  - partd=1.3.0=pyhd8ed1ab_0
  - pcre2=10.40=hc3806b6_0
  - pexpect=4.8.0=pyh1a96a4e_2
  - pickleshare=0.7.5=py_1003
  - pillow=9.4.0=py310h065c6d2_2
  - pip=23.0=pyhd8ed1ab_0
  - pixman=0.40.0=h36c2ea0_0
  - pkgutil-resolve-name=1.3.10=pyhd8ed1ab_0
  - platformdirs=3.0.0=pyhd8ed1ab_0
  - ply=3.11=py_1
  - pooch=1.7.0=pyha770c72_3
  - prometheus_client=0.16.0=pyhd8ed1ab_0
  - prompt-toolkit=3.0.36=pyha770c72_0
  - protobuf=4.21.12=py310heca2aa9_0
  - psutil=5.9.4=py310h5764c6d_0
  - pthread-stubs=0.4=h36c2ea0_1001
  - ptyprocess=0.7.0=pyhd3deb0d_0
  - pulseaudio=16.1=hcb278e6_3
  - pulseaudio-client=16.1=h5195f5e_3
  - pulseaudio-daemon=16.1=ha8d29e2_3
  - pure_eval=0.2.2=pyhd8ed1ab_0
  - pyarrow=11.0.0=py310he6bfd7f_16_cpu
  - pybtex=0.24.0=pyhd8ed1ab_2
  - pybtex-docutils=1.0.2=py310hff52083_2
  - pycparser=2.21=pyhd8ed1ab_0
  - pyct=0.4.6=py_0
  - pyct-core=0.4.6=py_0
  - pydata-sphinx-theme=0.13.3=pyhd8ed1ab_0
  - pydeck=0.8.0=pyhd8ed1ab_0
  - pygments=2.14.0=pyhd8ed1ab_0
  - pympler=1.0.1=pyhd8ed1ab_0
  - pyopenssl=23.0.0=pyhd8ed1ab_0
  - pyparsing=3.0.9=pyhd8ed1ab_0
  - pyqt=5.15.7=py310hab646b1_3
  - pyqt5-sip=12.11.0=py310heca2aa9_3
  - pyrsistent=0.19.3=py310h1fa729e_0
  - pysocks=1.7.1=pyha2e5f31_6
  - python=3.10.9=he550d4f_0_cpython
  - python-dateutil=2.8.2=pyhd8ed1ab_0
  - python-fastjsonschema=2.16.2=pyhd8ed1ab_0
  - python-json-logger=2.0.6=pyhd8ed1ab_0
  - python_abi=3.10=3_cp310
  - pytz=2022.7.1=pyhd8ed1ab_0
  - pyyaml=6.0=py310h5764c6d_5
  - pyzmq=25.0.0=py310h059b190_0
  - qt-main=5.15.8=h67dfc38_7
  - rdma-core=28.9=h59595ed_1
  - re2=2023.02.02=hcb278e6_0
  - readline=8.1.2=h0f457ee_0
  - requests=2.28.2=pyhd8ed1ab_0
  - rfc3339-validator=0.1.4=pyhd8ed1ab_0
  - rfc3986-validator=0.1.1=pyh9f0ad1d_0
  - rise=5.7.1=py310hff52083_2
  - s2n=1.3.44=h06160fa_0
  - s3transfer=0.6.1=pyhd8ed1ab_0
  - scipy=1.10.1=py310h8deb116_0
  - semver=3.0.0=pyhd8ed1ab_0
  - send2trash=1.8.0=pyhd8ed1ab_0
  - setuptools=67.3.2=pyhd8ed1ab_0
  - shellingham=1.5.1=pyhd8ed1ab_0
  - sip=6.7.7=py310heca2aa9_0
  - six=1.16.0=pyh6c4a22f_0
  - smmap=3.0.5=pyh44b312d_0
  - snappy=1.1.10=h9fff704_0
  - sniffio=1.3.0=pyhd8ed1ab_0
  - snowballstemmer=2.2.0=pyhd8ed1ab_0
  - soupsieve=2.3.2.post1=pyhd8ed1ab_0
  - sphinx=4.5.0=pyh6c4a22f_0
  - sphinx-book-theme=1.0.1=pyhd8ed1ab_0
  - sphinx-comments=0.0.3=pyh9f0ad1d_0
  - sphinx-copybutton=0.5.0=pyhd8ed1ab_0
  - sphinx-design=0.3.0=pyhd8ed1ab_0
  - sphinx-external-toc=0.3.1=pyhd8ed1ab_0
  - sphinx-jupyterbook-latex=0.5.2=pyhd8ed1ab_0
  - sphinx-multitoc-numbering=0.1.3=pyhd8ed1ab_0
  - sphinx-thebe=0.2.1=pyhd8ed1ab_0
  - sphinx-togglebutton=0.3.2=pyhd8ed1ab_0
  - sphinxcontrib-applehelp=1.0.4=pyhd8ed1ab_0
  - sphinxcontrib-bibtex=2.5.0=pyhd8ed1ab_0
  - sphinxcontrib-devhelp=1.0.2=py_0
  - sphinxcontrib-htmlhelp=2.0.1=pyhd8ed1ab_0
  - sphinxcontrib-jsmath=1.0.1=py_0
  - sphinxcontrib-qthelp=1.0.3=py_0
  - sphinxcontrib-serializinghtml=1.1.5=pyhd8ed1ab_2
  - sqlalchemy=1.4.46=py310h1fa729e_0
  - stack_data=0.6.2=pyhd8ed1ab_0
  - streamlit=1.9.0=pyhd8ed1ab_0
  - tabulate=0.9.0=pyhd8ed1ab_1
  - terminado=0.17.1=pyh41d4057_0
  - tinycss2=1.2.1=pyhd8ed1ab_0
  - tk=8.6.12=h27826a3_0
  - toml=0.10.2=pyhd8ed1ab_0
  - tomli=2.0.1=pyhd8ed1ab_0
  - toolz=0.12.0=pyhd8ed1ab_0
  - tornado=6.2=py310h5764c6d_1
  - traitlets=5.9.0=pyhd8ed1ab_0
  - typing-extensions=4.4.0=hd8ed1ab_0
  - typing_extensions=4.4.0=pyha770c72_0
  - tzdata=2022g=h191b570_0
  - tzlocal=5.0.1=py310hff52083_0
  - uc-micro-py=1.0.1=pyhd8ed1ab_0
  - ucx=1.14.1=hf587318_2
  - unicodedata2=15.0.0=py310h5764c6d_0
  - urllib3=1.26.14=pyhd8ed1ab_0
  - validators=0.20.0=pyhd8ed1ab_0
  - watchdog=3.0.0=py310hff52083_0
  - wcwidth=0.2.6=pyhd8ed1ab_0
  - webencodings=0.5.1=py_1
  - websocket-client=1.5.1=pyhd8ed1ab_0
  - wheel=0.38.4=pyhd8ed1ab_0
  - widgetsnbextension=3.6.1=pyha770c72_0
  - xarray=2023.3.0=pyhd8ed1ab_0
  - xcb-util=0.4.0=h516909a_0
  - xcb-util-image=0.4.0=h166bdaf_0
  - xcb-util-keysyms=0.4.0=h516909a_0
  - xcb-util-renderutil=0.3.9=h166bdaf_0
  - xcb-util-wm=0.4.1=h516909a_0
  - xkeyboard-config=2.38=h0b41bf4_0
  - xorg-kbproto=1.0.7=h7f98852_1002
  - xorg-libice=1.0.10=h7f98852_0
  - xorg-libsm=1.2.3=hd9c2040_1000
  - xorg-libx11=1.8.4=h0b41bf4_0
  - xorg-libxau=1.0.9=h7f98852_0
  - xorg-libxdmcp=1.1.3=h7f98852_0
  - xorg-libxext=1.3.4=h0b41bf4_2
  - xorg-libxrender=0.9.10=h7f98852_1003
  - xorg-renderproto=0.11.1=h7f98852_1002
  - xorg-xextproto=7.3.0=h0b41bf4_1003
  - xorg-xf86vidmodeproto=2.3.1=h7f98852_1002
  - xorg-xproto=7.0.31=h7f98852_1007
  - xz=5.2.6=h166bdaf_0
  - y-py=0.5.5=py310h4426083_2
  - yaml=0.2.5=h7f98852_2
  - ypy-websocket=0.8.2=pyhd8ed1ab_0
  - zeromq=4.3.4=h9c3ff4c_1
  - zipp=3.13.0=pyhd8ed1ab_0
  - zlib=1.2.13=h166bdaf_4
  - zstd=1.5.2=h3eb15da_6
  - pip:
      - arrow==1.2.3
      - fqdn==1.5.1
      - isoduration==20.11.0
      - jsonpointer==2.3
      - jupytercards==2.1.3
      - jupyterlab-myst==1.0.1
      - jupyterquiz==2.0.7
      - uri-template==1.2.0
      - webcolors==1.12
prefix: /home/user/mambaforge/envs/JBook

MordicusEtCubitus avatar Oct 23 '23 19:10 MordicusEtCubitus

@MordicusEtCubitus I am going to move this issue over to the hvPlot repository. I know you are using the example from the Datashader docs, but Datashader itself is just producing images under hvPlot's control and is not aware of whether the output goes to Jupyter or not.

I do know that there have been problems recently with various HoloViz projects and JupyterLab 3/4, but I don't know where this can be fixed.

ianthomas23 avatar Oct 31 '23 14:10 ianthomas23

Same here, when using datashader=True, upon zoom, the line is not redrawn.

jmakov avatar Dec 26 '23 19:12 jmakov