##// END OF EJS Templates
Merge pull request #2179 from dopplershift/pylab-switch...
Merge pull request #2179 from dopplershift/pylab-switch Enable switching %pylab mode between inline and a single gui mode in a single notebook. With this merge, `%pylab` can be called interactively to toggle inline/GUI (matplotlib floating windows) mode. After initializing `%pylab inline`, now one can call `%pylab` without arguments to activate the default GUI or ask for a specific one as usual. IPython will detect if a different GUI is requested if one was already activated and will refuse to do so (to prevent multiple event loops from running concurrently, which often leads to problems).

File last commit:

r4910:0dc49390
r8027:6dac6929 merge
Show More
parallel_pylab.ipy
49 lines | 1.2 KiB | text/plain | TextLexer
Brian E Granger
Adding examples from ipython1-dev to docs/examples/kernel. These ...
r1337 """Example of how to use pylab to plot parallel data.
The idea here is to run matplotlib is the same IPython session
MinRK
translate last remaining old parallel examples
r3690 as an ipython parallel Client. That way matplotlib
Brian E Granger
Adding examples from ipython1-dev to docs/examples/kernel. These ...
r1337 can be used to plot parallel data that is gathered using
MinRK
translate last remaining old parallel examples
r3690 a DirectView.
Brian E Granger
Adding examples from ipython1-dev to docs/examples/kernel. These ...
r1337
To run this example, first start the IPython controller and 4
engines::
ipcluster -n 4
Then start ipython in pylab mode::
ipython -pylab
Then a simple "run parallel_pylab.ipy" in IPython will run the
example.
"""
import numpy as N
from pylab import *
MinRK
translate last remaining old parallel examples
r3690 from IPython.parallel import Client
Brian E Granger
Adding examples from ipython1-dev to docs/examples/kernel. These ...
r1337
MinRK
translate last remaining old parallel examples
r3690 # load the parallel magic
%load_ext parallelmagic
# Get an IPython Client
rc = Client()
v = rc[:]
v.activate()
Brian E Granger
Adding examples from ipython1-dev to docs/examples/kernel. These ...
r1337
# Create random arrays on the engines
# This is to simulate arrays that you have calculated in parallel
# on the engines.
# Anymore that length 10000 arrays, matplotlib starts to be slow
%px import numpy as N
%px x = N.random.standard_normal(10000)
%px y = N.random.standard_normal(10000)
MinRK
translate last remaining old parallel examples
r3690 print v.apply_async(lambda : x[0:10]).get_dict()
print v.apply_async(lambda : y[0:10]).get_dict()
Brian E Granger
Adding examples from ipython1-dev to docs/examples/kernel. These ...
r1337
# Bring back the data
MinRK
translate last remaining old parallel examples
r3690 x_local = v.gather('x', block=True)
y_local = v.gather('y', block=True)
Brian E Granger
Adding examples from ipython1-dev to docs/examples/kernel. These ...
r1337
# Make a scatter plot of the gathered data
plot(x_local, y_local,'ro')