[Matplotlib-users] Windows7: figure window "not responding"

Thomas Caswell tcaswell at gmail.com
Sat Aug 19 17:31:49 EDT 2017


That is at least all consistent!  The issue as that for what ever reason
the input hook is not being set up correctly (which is what lets the GUI
event loop spin and process events while the terminal waits for you to
type).  With `plt.ion()` the terminal is blocking the process waiting for
you to type (which is why the window is not responding), with `plt.ioff()`
when you do `plt.show()` the GUI event loop is blocking the process (which
is why it works, but you don't get the next prompt back until you close the
plot window).  Again, see https://github.com/matplotlib/matplotlib/pull/4779
for a longer pass at explaining how this all works (and I would appreciate
feed back about where it does not make sense!).

Try using `tkagg` as the backend, the integration between python and tk in
a bit tighter (because it is done in the cpython source).

Which version of IPython and matplotlib are you using (and are you sure
that elpy is using the versions you think it is?)?

are you using `(elpy-use-ipython)` or just hacking the python executable
path?

You are siting at a very interesting intersection of technology here
(emacs + python + GUI + windows).  It might make sense to ask either on the
elpy mailing list or the ipython mailing list.

Tom

On Sat, Aug 19, 2017 at 3:28 PM Strozzi, David J. <strozzi2 at llnl.gov> wrote:

> Hi,
>
>
>
> * Just subscribed to list.
>
>
>
> * Backend: mpl.get_backend() = ‘Qt5Agg’.  I am not committed to this if
> another one will work.
>
>
>
> * “If you get up a window:” I start ipython within emacs (the GNU win32
> build, not cygwin), and do figure(1), a figure window appears, but nothing
> renders, and window title bar says “Not responding.”  If I plot something,
> it doesn’t appear.
>
>
>
> fig is not defined, by default.  I can do fig=gcf().  Then
> fig.canvas.flush_events() has an interesting effect – the plot appears, but
> then window title still says “not responding” and when I hover the mouse
> over the figure window it becomes Windows’ spinning blue circle (the busy
> symbol, like Mac’s spinning beachball).
>
>
>
> “control” is returned to ipython.  I can continue to execute commands
> there.
>
>
>
> * At this point, plt.ioff() doesn’t seem to do anything.  plt.show() does
> – “not responding” disappears, the figure window works like normal.
> Buttons on it work.  But the ipython window is “frozen” no In[] prompt.
>
>
>
> OK so this seems like a lot of information.  Maybe we can make progress?
>
>
>
> Dave
>
>
>
>
>
> *From:* Thomas Caswell [mailto:tcaswell at gmail.com]
>
> *Sent:* Saturday, August 19, 2017 10:54 AM
>
>
> *To:* Strozzi, David J. <strozzi2 at llnl.gov>; matplotlib-users at python.org
> *Subject:* Re: [Matplotlib-users] Windows7: figure window "not responding"
>
>
>
> David,
>
>
>
> Please subscribe to the mailing list so you can post un-moderated.
>
>
>
> Which backend are you using?
>
>
>
> If you get a window up and then do `fig.canvas.flush_events()` will it
> update?
>
>
>
> If you do `plt.ioff()` and then `plt.show()` does it work?
>
>
>
> Tom
>
>
>
>
>
> On Sat, Aug 19, 2017 at 12:40 PM Strozzi, David J. <strozzi2 at llnl.gov>
> wrote:
>
> Thanks for the respone.  Sadly, I can’t get anything useful out of the
> doc.  And %matplotlib doesn’t help, same effect.
>
>
>
> This is very frustrating.  I don’t know how to debug this.  It’s just a
> “black box”, I do what I’m “supposed to”, doesn’t work.
>
>
>
> Help appreciated!
>
> Dave
>
>
>
> *From:* Thomas Caswell [mailto:tcaswell at gmail.com]
> *Sent:* Saturday, August 05, 2017 10:36 AM
> *To:* Strozzi, David J. <strozzi2 at llnl.gov>; matplotlib-users at python.org
> *Subject:* Re: [Matplotlib-users] Windows7: figure window "not responding"
>
>
>
> I do exactly this as well (but on linux)!
>
>
>
> The symptoms your are describing sounds like the GUI event loop is not
> being spun behind the scenes (see
> https://github.com/matplotlib/matplotlib/pull/4779 for some draft text at
> explaining how all of that works).  Have you tried doing `%matplotlib` is
> IPython?
>
>
>
> Tom
>
>
>
> On Sat, Aug 5, 2017 at 12:39 PM Strozzi, David J. <strozzi2 at llnl.gov>
> wrote:
>
> This problem has been driving me nuts, posted it elsewhere, so far no
> one's been able to help.  I am running Python 3.6.1 from Anaconda (all
> packages updated to latest and greatest) on Windows 7.  ipython and mpl
> figure windows work fine from a console, or spyder.  The problem is when I
> try running ipython within emacs using elpy.
>
>
>
> To back up, the workflow I'm shooting for is using emacs as my IDE, and
> running python within emacs.  I've done this for many years with the Yorick
> interpreter, and it's quite addictive.  I get the same problem whether I
> use the GNU windows build of emacs, or emacs -nw (terminal, no X) from
> cygwin (ver 25.2 both cases).  elpy seems to be a good Python package for
> emacs, and nominally supports using ipython.
>
>
>
> OK, so - I can use ipython + emacs + elpy.  The only problem is matplotlib
> figures.  When I do figure(), a figure window appears, but is not fully
> rendered (e.g. no buttons), and the window title says "Not responding".  If
> I do a plot(), nothing is plotted.  Playing with ion() and show() doesn't
> help.
>
>
>
> I've posted this on the elpy github, various stackexchange forums, no one
> has had any ideas yet.
>
>
>
> Any help is greatly appreciated!
>
> Dave
>
> _______________________________________________
> Matplotlib-users mailing list
> Matplotlib-users at python.org
> https://mail.python.org/mailman/listinfo/matplotlib-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/matplotlib-users/attachments/20170819/95b5198d/attachment.html>


More information about the Matplotlib-users mailing list