NCAS-CMS / cf-view

Exploration and plotting GUI for netCDF and Met Office format data
https://ncas-cms.github.io/cf-view/build/
MIT License
4 stars 4 forks source link

Modal behaviour of the contour plots #4

Closed bnlawrence closed 8 years ago

bnlawrence commented 10 years ago

Can we make it non-blocking?

bnlawrence commented 10 years ago

We have three choices for solution:

E.g. see: http://stackoverflow.com/questions/458209/is-there-a-way-to-detach-matplotlib-plots-so-that-the-computation-can-continue

See also http://matplotlib.1069221.n5.nabble.com/Explicitly-clearing-Matplotlib-Pylab-figure-buffers-td41874.html

More fundamenal details about backends and plotting styles on the matplotlib site.

Looks like Andy and I need to solve this together!

ajheaps commented 10 years ago

Hi Bryan,

I tried the multiprocessing option in cfplot while Mudit was here. The first plot was okay and returned to the interactive Python prompt. The second plot caused Python to bomb out to the Unix prompt. I'll have another look at this this week and see if I can make any progress on it as this would be a good feature to have within cfplot.

The third option is nice as well as then the user has a set of plots that they can go back to. This could be useful depending on how they use cf-view.

Cheers Andy

On 10/20/14 21:02, Bryan Lawrence wrote:

We have three choices for solution:

  • Fix it inside cf-plot (would need @ajheaps https://github.com/ajheaps to fix), or
  • We use a sub-process (or multiprocessing) (but is there a memory copying issue?), or
  • We simply plot to file, give up on the automagic pylab gubbins and handle it in our own non-blocking window.

E.g. see: http://stackoverflow.com/questions/458209/is-there-a-way-to-detach-matplotlib-plots-so-that-the-computation-can-continue

— Reply to this email directly or view it on GitHub https://github.com/ajheaps/CF-View/issues/4#issuecomment-59830199.

Andy Heaps
National Centre for Atmospheric Science (NCAS)
Meteorology Department,
Reading University,
Earley Gate,
PO Box 243,
Reading RG6 6BB,
U.K.

tel: 0118 378 7840
fax: 0118 378 8316
e-mail: a.j.heaps@rdg.ac.uk
ajheaps commented 8 years ago

cf-plot 1.9.22 addresses this by using the ImageMagick display command, if it is available, to display the plots in a subprocess call. If display isn't available then the built-in Matplotlib viewer is used to display plots. I'll put a menu item in so that users can switch between the two modes for those who want more control.
I cannot do a conda upload today as there looks to be an issue with PyQt4 which is used as a matplotlib background. I'll report this and do a new conda release of cf-plot as soon as I can. cf-plot is also available from GitHub and pypi.