Python - matplotlib
Revision as of 16:57, 5 September 2008 by PeterHarding (talk | contribs)
Examples
Makefile to Run Demos
#---------------------------------------------------------------------
GUI_TESTS = \
anim.png \
TESTS = \
anscombe.png \
alignment_test.png \
arctest.png \
axprops_demo.png \
barchart_demo.png \
bar_stacked.png \
box1.png \
dashticklabel.png \
dashpointlabel.png \
#---------------------------------------------------------------------
all: $(TESTS)
test: arctest.png
#---------------------------------------------------------------------
anim.png:
python ./anim.py
anscombe.png:
python ./anscombe.py
alignment_test.png:
python ./alignment_test.py
arctest.png:
python ./arctest.py
axprops_demo.png:
python ./axes_props.py
barchart_demo.png:
python ./barchart_demo.py
bar_stacked.png:
python ./bar_stacked.py
box1.png:
python ./boxplot_demo.py
dashpointlabel.png:
python ./dashpointlabel.py
dashticklabel.png:
python ./dashtick.py
#---------------------------------------------------------------------
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:
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)

