Python - matplotlib

From PeformIQ Upgrade
Revision as of 12:21, 25 January 2008 by PeterHarding (talk | contribs)
Jump to navigation Jump to search

Examples

AXES Demo

#!/usr/bin/env python

from pylab import *

# create some data to use for the plot

dt = 0.001
t  = arange(0.0, 10.0, dt)
r  = exp(-t[:1000]/0.05)        # impulse response
x  = randn(len(t))
s  = convolve(x,r)[:len(x)]*dt  # colored noise

# the main axes is subplot(111) by default

plot(t, s)
axis([0, 1, 1.1*amin(s), 2*amax(s) ])
xlabel('time (s)')
ylabel('current (nA)')
title('Gaussian colored noise')

# this is an inset axes over the main axes

a  = axes([.65, .65, .2, .2], axisbg='y')

n, bins, patches = hist(s, 400, normed=1)
title('Probability')
setp(a, xticks=[], yticks=[])

# this is another inset axes over the main axes

a  = axes([0.2, 0.65, .2, .2], axisbg='g')

plot(t[:len(r)], r)
title('Impulse response')
setp(a, xlim=(0,.2), xticks=[], yticks=[])

#show()
#savefig('../figures/axes_demo.eps')
#savefig('../figures/axes_demo.png')
savefig('axes_demo.png')

Produces:

Axes demo.png

arctest.py

#!/usr/bin/env python

from pylab import *

def f(t):
    'a damped exponential'
    s1 = cos(2*pi*t)
    e1 = exp(-t)
    return multiply(s1,e1)

t1 = arange(0.0, 5.0, .2)


l  = plot(t1, f(t1), 'ro')

setp(l, 'markersize', 30)
setp(l, 'markerfacecolor', 'b')


# show()

savefig('arctest', dpi=150)

Produces Arctest.png