Hi,
I reattached your example in a slightly modified way. For me with current svn
it does its job. The key points are that I introduced a twin-axes and used
subplots_adjust(wspace=0.6) to extend the horizontal space between the
subplots.
Does this help you?
Kind regards
Matthias
On Sunday 29 November 2009 04:17:39 Peter Williams wrote:
Hi All,
I'm trying to create a set of strip charts so that I can see the
relationships between a large number of time series. I'd like to label the
y-axis with a name on the left side and a value/percentile on the right
hand side. I can get the names on the left axis, and it looks very nice
(yay Matplotlib!). When I try to the code below I don't get the output I'd
like. None of the explicit tick labels that I'm setting make it to the
display, and also the 3 charts on the page aren't kept separate (left tick
labels from chart 132 hit the right tick labels from chart 131). Any
suggestions very appreciated.
import numpy as np
import matplotlib.pyplot as plt
nameN = 25
obsN = 50
names = [foo%d % x for x in range(nameN)]
vols = np.random.uniform(0.2, 0.45, nameN)
labels = ['ValA', 'ValB', 'ValC']
d1 = np.random.normal(0,1, obsN*nameN).reshape(obsN, -1)*vols
d2 = np.random.normal(0,1, obsN*nameN).reshape(obsN, -1)*vols
d3 = np.random.normal(0,1, obsN*nameN).reshape(obsN, -1)*vols
f = 0.45
fig = plt.figure()
for label, dset, ax_id in zip(labels, (d1, d2, d3), (131, 132, 133)):
ax = fig.add_subplot(ax_id)
for i in range(len(names)):
mx = np.max(dset[:,i])
mn = np.min(dset[:,i])
y = i + dset[:,i]*2*f/(mx - mn) - f*(mx + mn)/(mx - mn) + 1
y_last = y[-1]*np.ones_like(y)
x = np.arange(obsN)
ax.fill_between(x, y_last, y)
ax.set_ylim((0, nameN + 1))
ax.set_yticks(range(1, nameN + 1))
ax.set_title(label, fontsize=10)
for tk, nm in zip(ax.yaxis.get_major_ticks(), list(reversed(names))):
tk.tick1On = False
tk.tick2On = False
tk.label1On = True
tk.label2On = True
tk.set_label1(nm)
tk.set_label2(%.1f\n(%.1f tile) % (36.2, 98.6))
#ytickNames = ax.set_yticklabels(list(reversed(names)), rotation = 45,
fontsize = 8)
plt.show()
question_about_explicit_tick_labels.py
Description: application/python
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users