On Thu, Jun 4, 2009 at 8:49 AM, Ole Streicher <ole-usenet-s...@gmx.net> wrote:
setParent(parent)
>        self.mpl_connect('motion_notify_event', self.on_move)
>
>    def on_move(self, event)
>        mouse_pos_diag_x = ???(event.xdata)
>        mouse_pos_diag_y = ???(event.ydata)
>        lower_limit_diag_y = ???
>        upper_limit_diag_y = ???
>        ...
>
> where I would need to replace the ??? with some transformation from
> event.xdata, event.ydata, and the min and max of the y axis. How could I
> do that?

The mouse event object already has display coords attached in the
event.x and event.y attributes.  See

  
http://matplotlib.sourceforge.net/api/backend_bases_api.html#matplotlib.backend_bases.LocationEvent

and

  http://matplotlib.sourceforge.net/users/event_handling.html


But to answer your question about matplotlib transforms.  You could do

  ax = event.inaxes   # the axes the event occurred in
  x, y = ax.transData.transform_point((event.xdata, event.ydata))

and you should get the same answer.
JDH

------------------------------------------------------------------------------
OpenSolaris 2009.06 is a cutting edge operating system for enterprises 
looking to deploy the next generation of Solaris that includes the latest 
innovations from Sun and the OpenSource community. Download a copy and 
enjoy capabilities such as Networking, Storage and Virtualization. 
Go to: http://p.sf.net/sfu/opensolaris-get
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to