Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 03:10
    pnsvk opened #1940
  • Jan 24 20:36
    esc commented #984
  • Jan 24 20:34
    esc commented #984
  • Jan 24 20:07
    esc opened #984
  • Jan 24 17:07
    philippjfr synchronize #4794
  • Jan 24 17:07

    philippjfr on highlight_operation

    Allow using dask_spatialpandas … (compare)

  • Jan 24 16:38
    mullimanko opened #551
  • Jan 24 16:38
    mullimanko opened #4799
  • Jan 24 06:09
    codecov[bot] commented #1939
  • Jan 24 06:02
    codecov[bot] commented #1939
  • Jan 24 06:01
    codecov[bot] commented #1939
  • Jan 24 06:01
    codecov[bot] commented #1939
  • Jan 24 05:58
    codecov[bot] commented #1939
  • Jan 24 05:58
    codecov[bot] commented #1939
  • Jan 24 05:57
    codecov[bot] commented #1939
  • Jan 24 05:44
    MarcSkovMadsen opened #1939
  • Jan 24 05:43
    MarcSkovMadsen edited #1938
  • Jan 24 05:42

    MarcSkovMadsen on enable-serving-bokeh-apps

    added functionality for serving… (compare)

  • Jan 24 05:08
    MarcSkovMadsen edited #1938
  • Jan 24 05:07
    MarcSkovMadsen edited #1938
Marc Skov Madsen
@MarcSkovMadsen
:-) Why do I have to navigate to the galleries in each of the sites if I don't know which or if I'm really trying to use several libraries together. I actually feel on the discourse there increasingly are questions on how to use the different libraries in combination or where the answer really is based an having a combined understanding. This combined understanding is not something many have (I claim) and something that the existing documentation does not focus on.
James A. Bednar
@jbednar
examples.pyviz.org is meant to be that gallery that crosses projects, but the more the merrier!
I don't know which header image that Datashader shot is, but I suspect it's from someone other than me, as that's not one of my usual colormaps. But at least I don't have any objection!
Marc Skov Madsen
@MarcSkovMadsen
You can try out the gallery here https://awesome-panel.org/gallery. It loads a bit slow. I need to find out why. And then I need to fill in the data.
Philipp Rudiger
@philippjfr
Ugh sorry @rsignell-usgs should have pinged you. Was a bit rushed before taking two days off. Something in the PyPI build chain broke which I wasn't able to resolve in time.
@MarcSkovMadsen Your gallery looks great. Could you make an issue with suggestions on how to improve the main Panel gallery?
Kim Pevey
@kcpevey

Has anyone else seen this bug?

VM10348:52 Python failed with the following traceback: 
/Users/kcp/.conda/envs/lbm/lib/python3.8/site-packages/pyviz_comms/__init__.py _handle_msg L316
/Users/kcp/.conda/envs/lbm/lib/python3.8/site-packages/holoviews/plotting/bokeh/callbacks.py on_msg L146
/Users/kcp/.conda/envs/lbm/lib/python3.8/site-packages/holoviews/plotting/bokeh/callbacks.py _process_msg L1203
/Users/kcp/.conda/envs/lbm/lib/python3.8/site-packages/holoviews/plotting/bokeh/callbacks.py <listcomp> L1203
    ValueError: invalid literal for int() with base 10: 'dtype'

It's cropped up in my code this week. I thought I had it narrowed down and reported it here holoviz/holoviews#4626 but now I noticed it on a completely different plot unrelated to annotators.

Philipp Rudiger
@philippjfr
Which HoloViews version? 1.13.4?
Kim Pevey
@kcpevey
'1.13.4'
Marc Skov Madsen
@MarcSkovMadsen
@philippjfr . I've created the FR for a better index/ gallery page here holoviz/panel#1601
sameerCoder
@sameerCoder
How we can save panel plot/holoview plot/bokeh plot in geotiff format?
Thank you
Marc Skov Madsen
@MarcSkovMadsen
Hi @sameerCoder . I can see you have posted on Discourse https://discourse.holoviz.org/t/how-we-cann-save-panel-plot-holoview-plot-bokeh-plot-in-geotiff-format/1234. Thanks. That is the right place for questions.
Philipp Rudiger
@philippjfr
@sameerCoder I really don't know what it would mean to save a plot to GeoTIFF really.
Kim Pevey
@kcpevey

I'm dealing with a memory leak from hv.RGB. I've traced it back to the matplotlib backend (even though I'm running hv with the bokeh backend). It's possibly related to this mpl issue matplotlib/matplotlib#8519 . It may be related to this issue as well which has been labeled a bug holoviz/hvplot#501 .

Is there a workaround for NOT using mpl as the backend for hv.RGB?

Philipp Rudiger
@philippjfr
I don't know why RGB is involved at all for RGB
Kim Pevey
@kcpevey
do you mean mpl?
Philipp Rudiger
@philippjfr
Yes, sorry :laughing:
Kim Pevey
@kcpevey
yeah I don't know why it's dropping to mpl image.py as the last step. I'm running a notebook that has the bokeh ext loaded.
So it should be able to stay with bokeh?
Philipp Rudiger
@philippjfr
What is image.py?
Kim Pevey
@kcpevey
some file in mpl. I'll look it up.

This is the tracemalloc:

[ Top 10 ]
/Users/kcp/miniconda3/envs/lbm/lib/python3.8/site-packages/matplotlib/image.py:1663: size=402 MiB, count=6, average=66.9 MiB
/Users/kcp/miniconda3/envs/lbm/lib/python3.8/posixpath.py:368: size=445 KiB, count=3417, average=133 B
/Users/kcp/miniconda3/envs/lbm/lib/python3.8/linecache.py:137: size=336 KiB, count=3244, average=106 B
/Users/kcp/miniconda3/envs/lbm/lib/python3.8/inspect.py:753: size=144 KiB, count=1, average=144 KiB
/Users/kcp/miniconda3/envs/lbm/lib/python3.8/inspect.py:750: size=144 KiB, count=1, average=144 KiB
/Users/kcp/miniconda3/envs/lbm/lib/python3.8/site-packages/IPython/core/builtin_trap.py:63: size=9248 B, count=1, average=9248 B
/Users/kcp/miniconda3/envs/lbm/lib/python3.8/site-packages/IPython/core/compilerop.py:101: size=5446 B, count=96, average=57 B
/Users/kcp/miniconda3/envs/lbm/lib/python3.8/json/decoder.py:353: size=3479 B, count=44, average=79 B
/Users/kcp/miniconda3/envs/lbm/lib/python3.8/site-packages/param/parameterized.py:271: size=2184 B, count=13, average=168 B
/Users/kcp/miniconda3/envs/lbm/lib/python3.8/site-packages/tornado/gen.py:191: size=2088 B, count=8, average=261 B

With the bokeh ext loaded

Philipp Rudiger
@philippjfr
I can't tell you really, something must explicitly invoking matplotlib to make that happen.
Kim Pevey
@kcpevey
img = hv.RGB.load_image(path) was the call
Philipp Rudiger
@philippjfr
Ah okay.
Surprised plt.imread would create a figure.
Kim Pevey
@kcpevey
maybe it's just using this function https://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/image.py#L1642 to create the array?
Philipp Rudiger
@philippjfr
I'd suggest replacing it with a PIL based solution.
And then make a PR to HoloViews to use that in RGB.load_image.
Right I have no idea why that would leak memory.
Kim Pevey
@kcpevey

I also tried

from PIL import Image
img = hv.RGB(np.array(Image.open(path)))

with the same results

Philipp Rudiger
@philippjfr
Also tracemalloc only checks memory allocations, not leakages.
Kim Pevey
@kcpevey
still drops to mpl
Right. so when I run the above, I can watch my machine memory increase incrementally every ttime and it never drops until I shutdown the kernel
Philipp Rudiger
@philippjfr
Does an explicit gc.collect() reclaim the memory?
Kim Pevey
@kcpevey
no
Philipp Rudiger
@philippjfr

So repeatedly running:

from PIL import Image
img = hv.RGB(np.array(Image.open(path)))

increases memory usage?

Kim Pevey
@kcpevey
yes
Philipp Rudiger
@philippjfr
And this does not?
from PIL import Image
img = np.array(Image.open(path))
Kim Pevey
@kcpevey
good question. let me check
Philipp Rudiger
@philippjfr

Use this instead:

f = open(filename, 'rb')
image = Image.open(f)
image.load()
f.close()

Pillow is leaking the file pointer

Or rather use:
with open(filename, 'rb') as:
    image = np.array(Image.open(f))
And then please make a PR to HoloViews to use PIL in the same way in HoloViews.
(Replacing the imread)
Kim Pevey
@kcpevey
Hmm. I'll have to think though how I can implement this in my panel pipeline as well.
So if the image variable is deleted or replaced, it will close the file with your second example?
oh wait, the file is automatically closed after the image variable is created