##// END OF EJS Templates
Merge pull request #1363 from minrk/qtstyle...
Merge pull request #1363 from minrk/qtstyle Fix some minor color/style config issues in the qtconsole The tabbed code changed a few things about loading styles and stylesheets in the qtconsole, which this resolves, among a couple other small color-related issues: * tabs other than the first get colors * IPythonWidget.style_sheet configurable is not clobbered by defaults * style_sheet configurable would cause a crash, because _style_sheet_changed could be called before _control existed * fix str->unicode token preventing stylesheets without syntax highlighting from working * fix typo in the function used to detect whether a bgcolor is dark or light

File last commit:

r4910:0dc49390
r6095:2b3bc441 merge
Show More
plotting_backend.py
56 lines | 1.7 KiB | text/x-python | PythonLexer
"""An example of how to use IPython for plotting remote parallel data
The two files plotting_frontend.py and plotting_backend.py go together.
This file (plotting_backend.py) performs the actual computation. For this
example, the computation just generates a set of random numbers that
look like a distribution of particles with 2D position (x,y) and
momentum (px,py). In a real situation, this file would do some time
consuming and complicated calculation, and could possibly make calls
to MPI.
One important feature is that this script can also be run standalone without
IPython. This is nice as it allows it to be run in more traditional
settings where IPython isn't being used.
When used with IPython.parallel, this code is run on the engines. Because this
code doesn't make any plots, the engines don't have to have any plotting
packages installed.
"""
# Imports
import numpy as N
import time
import random
# Functions
def compute_particles(number):
x = N.random.standard_normal(number)
y = N.random.standard_normal(number)
px = N.random.standard_normal(number)
py = N.random.standard_normal(number)
return x, y, px, py
def downsample(array, k):
"""Choose k random elements of array."""
length = array.shape[0]
indices = random.sample(xrange(length), k)
return array[indices]
# Parameters of the run
number = 100000
d_number = 1000
# The actual run
time.sleep(0) # Pretend it took a while
x, y, px, py = compute_particles(number)
# Now downsample the data
downx = downsample(x, d_number)
downy = downsample(x, d_number)
downpx = downsample(px, d_number)
downpy = downsample(py, d_number)
print "downx: ", downx[:10]
print "downy: ", downy[:10]
print "downpx: ", downpx[:10]
print "downpy: ", downpy[:10]