Many thanks for the suggestions, will try these out today.

Incidentally, it looks like there is an interesting bug in the mail
archive software. Viewing my original message there I can see that it
has removed all instances of the combination "pre" (that's p then r
then e if it eats this too!). It does this even in the middle of
words, such as "previous", "appreciate" etc.

Regards,
Geoff

On Thu, Feb 11, 2010 at 6:44 PM, Jae-Joon Lee <lee.j.j...@gmail.com> wrote:
> Or, you may fool the algorithm to find the best location by adding
> invisible lines.
> For example,
>
> axessubplot4.set_autoscale_on(False)
> l1, = axessubplot4.plot([4, 5], [8, 18])
> l1.set_visible(False)
> axessubplot4.set_autoscale_on(True)
>
> Regards,
>
> -JJ
>
>
> On Thu, Feb 11, 2010 at 10:58 AM, John Hunter <jdh2...@gmail.com> wrote:
>> On Thu, Feb 11, 2010 at 9:43 AM, Geoff Bache <geoff.ba...@jeppesen.com> 
>> wrote:
>>>
>>> Hi all,
>>>
>>> I'm trying to generate graphs from my test results, with regions
>>> coloured with succeeded and failing tests. It nearly works, but I have
>>> the following problem. I am providing the data with fill_between, which
>>> returns PolyCollection objects which cannot be provided to a legend. So
>>> I use the "proxy artist" trick, as described here
>>>
>>> http://matplotlib.sourceforge.net/users/legend_guide.html#plotting-guide-legend
>>>
>>
>> What about creating a proxy artist which is a simple polygon that has
>> the same outline as your fill_between polygon?
>>
>>
>> In [539]: t = np.arange(0, 1, 0.05)
>>
>> In [540]: y = np.sin(2*np.pi*t)
>>
>> In [541]: verts = zip(t, y)
>>
>> In [542]: proxy = mpatches.Polygon(verts, facecolor='yellow')
>>
>> The only reason fill_between uses a PolyCollection is to support the
>> "where" keyword argument for non-contiguous fill regions, which you do
>> not appear to be using.  Thus you could simply create the polygon
>> yourself with a little calculation (see mlab.poly_between for a helper
>> function) and then just add that patch to the axes rather than using
>> fill_between::
>>
>>  t = np.arange(0, 1, 0.05)
>>  ymin = np.sin(2*np.pi*t)-5
>>  ymax = np.sin(2*np.pi*t)+5
>>  xs, ys = mlab.poly_between(t, ymin, ymax)
>>  verts = zip(xs, ys)
>>  poly = mpatches.Polygon (verts, facecolor='red', label='my poly')
>>  ax = subplot(111)
>>  ax.add_patch(poly)
>>  ax.legend(loc='best')
>>  ax.axis([0, 1, -6, 6])
>>  plt.draw()
>>
>> ------------------------------------------------------------------------------
>> SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
>> Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
>> http://p.sf.net/sfu/solaris-dev2dev
>> _______________________________________________
>> Matplotlib-users mailing list
>> Matplotlib-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>>
>
> ------------------------------------------------------------------------------
> SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
> Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
> http://p.sf.net/sfu/solaris-dev2dev
> _______________________________________________
> Matplotlib-users mailing list
> Matplotlib-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>

------------------------------------------------------------------------------
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to