Re: [Matplotlib-users] what is line._invalid in matplotlib 1.0?

2010-12-05 Thread C M
On Sun, Dec 5, 2010 at 9:33 PM, Jae-Joon Lee  wrote:

> Here is a modified version of the code. Note that since it uses
> non-public APIs, it may stop to work again in the future. According to
> your original post, you seem to want to pick up points only. I guess
> the better way is to have a separate artists. One for points and the
> other for line segments.
>
>
JJ, Thank you very much.  This is good to know.  However, I had hoped that
getting this check of the line's validity would clear up the main problem
I've had since going to 1.0--but it did not, The problem is:

Prior to upgrade, I could get picking on a) the legend, and b) all points on
the graph, whether the graph had one y axis or two (using twinx).

Now, after upgrade, if I only have one y axis, I can get fine point picking
and legend picking, but if I have two y axes, I can't get legend picking and
can only get point picking on the points that belong to the left y axis, not
the right y axis.

I get no errors, but no (full) point picking, either.  I need to get this
cleared up and I'd love to stay with 1.0, but I don't know what the issue
might be.

Che
--
What happens now with your Lotus Notes apps - do you make another costly 
upgrade, or settle for being marooned without product support? Time to move
off Lotus Notes and onto the cloud with Force.com, apps are easier to build,
use, and manage than apps on traditional platforms. Sign up for the Lotus 
Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


Re: [Matplotlib-users] what is line._invalid in matplotlib 1.0?

2010-12-05 Thread Jae-Joon Lee
Here is a modified version of the code. Note that since it uses
non-public APIs, it may stop to work again in the future. According to
your original post, you seem to want to pick up points only. I guess
the better way is to have a separate artists. One for points and the
other for line segments.

Regards,

-JJ


def contains_points(self, mouseevent):

pickradius = self.pickradius

# Make sure we have data to plot
#if self._invalid:
if self._invalidy or self._invalidx:
self.recache()
if len(self._xy)==0: return False,{}

# Convert points to pixels
if self._transformed_path is None:
self._transform_path()
path, affine = self._transformed_path.get_transformed_points_and_affine()
path = affine.transform_path(path)
xy = path.vertices
xt = xy[:, 0]
yt = xy[:, 1]

pixels = self.figure.dpi/72. * self.pickradius

d = (xt-mouseevent.x)**2 + (yt-mouseevent.y)**2
ind, = np.nonzero(np.less_equal(d, pixels**2))

# Return the point(s) within radius
return len(ind)>0,dict(ind=ind)

On Mon, Dec 6, 2010 at 8:19 AM, C M  wrote:
> Hello.  I upgraded from about mpl 0.98.5 to 1.0, and this code, which worked
> in 0.98.5:
>
>     if line._invalid:
>     line.recache()
>
> now gives this error:
>
>   AttributeError: 'Line2D' object has no attribute '_invalid'
>
> What is now (1.0) the right way to test whether a Line2D object is invalid?
>
> Thanks very much,
> Che
>
> (This question is in another recent post of mine, but this is much more to
> the point)
>
> --
> What happens now with your Lotus Notes apps - do you make another costly
> upgrade, or settle for being marooned without product support? Time to move
> off Lotus Notes and onto the cloud with Force.com, apps are easier to build,
> use, and manage than apps on traditional platforms. Sign up for the Lotus
> Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d
> ___
> Matplotlib-users mailing list
> Matplotlib-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>
>

--
What happens now with your Lotus Notes apps - do you make another costly 
upgrade, or settle for being marooned without product support? Time to move
off Lotus Notes and onto the cloud with Force.com, apps are easier to build,
use, and manage than apps on traditional platforms. Sign up for the Lotus 
Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d
___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users


[Matplotlib-users] what is line._invalid in matplotlib 1.0?

2010-12-05 Thread C M
Hello.  I upgraded from about mpl 0.98.5 to 1.0, and this code, which worked
in 0.98.5:

if line._invalid:
line.recache()

now gives this error:

  AttributeError: 'Line2D' object has no attribute '_invalid'

What is now (1.0) the right way to test whether a Line2D object is invalid?

Thanks very much,
Che

(This question is in another recent post of mine, but this is much more to
the point)
--
What happens now with your Lotus Notes apps - do you make another costly 
upgrade, or settle for being marooned without product support? Time to move
off Lotus Notes and onto the cloud with Force.com, apps are easier to build,
use, and manage than apps on traditional platforms. Sign up for the Lotus 
Notes Migration Kit to learn more. http://p.sf.net/sfu/salesforce-d2d___
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users