<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<div name="messageBodySection" style="font-size: 14px; font-family: -apple-system, BlinkMacSystemFont, sans-serif;">Hey Tom,
<div><br /></div>
<div>Thanks for that response, it was just what I needed! I had a fun infinite loop where the x-axis was updating the y-axis which was updating the x-axis which... =P But it was easy enough to sort out. =)</div>
<div><br /></div>
<div>I have a working orthogonal slice viewer here:</div>
<div><a href="https://github.com/jni/mpl-volume-viewer/">https://github.com/jni/mpl-volume-viewer/</a><br /></div>
<div><br /></div>
<div>The problem I have now is that, if I set a mouse-click callback (<a href="https://github.com/jni/mpl-volume-viewer/blob/6d863d2a28ced54576c6f4f8905d58e229f02042/slice_view.py#L71">this line</a> and <a href="https://github.com/jni/mpl-volume-viewer/blob/6d863d2a28ced54576c6f4f8905d58e229f02042/slice_view.py#L101">this line</a>), and then I select any other tool from the toolbar, I get this super-obnoxious flickering, recorded here (macOS 10.12, Tk backend):</div>
<div>https://www.dropbox.com/s/qvfmgp0x36p6rb9/mpl-click-bug.mov?dl=0<br /></div>
<div><br /></div>
<div>To reproduce:</div>
<div><br /></div>
<div>- Download slice_view.py and put it in your PYTHONPATH or current working directory</div>
<div>- Download this example dataset: </div>
<div>https://www.dropbox.com/s/dj3oarx7bqx4us2/E_z2_512_1um_CONTROL.tif?dl=1<br /></div>
<div>- Run this code:</div>
<div><br /></div>
<div>
<div><i>import matplotlib</i></div>
<div><i>matplotlib.use('TkAgg')</i></div>
<div><i><br /></i></div>
<div><i>from skimage import io</i></div>
<div><i>import slice_view as sv</i></div>
<div><i><br /></i></div>
<div><i>filename = '/path/to/E_z2_512_1um_CONTROL.tif'</i></div>
<div><i>image = io.imread(filename) / 4096</i></div>
<div><i><br /></i></div>
<div><i>v = sv.SliceViewer(image, spacing=[5, 1, 1])</i></div>
<div><i>matplotlib.pyplot.show(block=True)</i></div>
</div>
<div><br /></div>
<div>Questions:</div>
<div>1) Any ideas about how to fix the flickering?</div>
<div>2) Is there a cross-backend way to add buttons to the toolbar? All the examples I've found online were backend-specific. (This way I could at least disable the callback at will.)</div>
<div><br /></div>
<div>Thanks!</div>
<div><br /></div>
<div>Juan.</div>
</div>
<div name="messageReplySection" style="font-size: 14px; font-family: -apple-system, BlinkMacSystemFont, sans-serif;"><br />
On 16 May 2017, 1:43 AM +1000, Thomas Caswell <tcaswell@gmail.com>, wrote:<br />
<blockquote type="cite" style="margin: 5px 5px; padding-left: 10px; border-left: thin solid #1abc9c;">
<div dir="ltr">There are callbacks that fire when the limits are changed.  See
<div><br /></div>
<div><a href="https://matplotlib.org/examples/event_handling/viewlims.html">https://matplotlib.org/examples/event_handling/viewlims.html</a> <br /></div>
<div><br /></div>
<div>for an example.</div>
<div><br /></div>
<div>This is probably the best route to go down as you can do other interesting things as the event goes by (like triggering computation, updating a openGL view window, etc) as well as updating the Matplotlib limits.</div>
<div><br /></div>
<div>Tom</div>
</div>
<br />
<div class="gmail_quote">
<div dir="ltr">On Mon, May 15, 2017 at 3:29 AM Juan Nunez-Iglesias <<a href="mailto:jni.soma@gmail.com">jni.soma@gmail.com</a>> wrote:<br /></div>
<blockquote class="gmail_quote" style="margin: 5px 5px; padding-left: 10px; border-left: thin solid #e67e22;">
<div>
<div name="messageBodySection" style="font-size:14px;font-family:-apple-system,BlinkMacSystemFont,sans-serif">Hello,
<div><br /></div>
<div>I’m trying to build an orthogonal-views volume viewer in Matplotlib like this one:</div>
<div><a href="https://imagej.nih.gov/ij/docs/guide/images/OrthogonalViews.png" target="_blank">https://imagej.nih.gov/ij/docs/guide/images/OrthogonalViews.png</a><br /></div>
<div><br /></div>
<div>For this to work, I need to share the y-axis of the YZ (right) view/subplot with the x-axis of the XZ (bottom) view/subplot. Is this possible?</div>
<div><br /></div>
<div>Juan.</div>
</div>
<div name="messageReplySection" style="font-size:14px;font-family:-apple-system,BlinkMacSystemFont,sans-serif"><br /></div>
</div>
_______________________________________________<br />
Matplotlib-users mailing list<br />
<a href="mailto:Matplotlib-users@python.org" target="_blank">Matplotlib-users@python.org</a><br />
<a href="https://mail.python.org/mailman/listinfo/matplotlib-users" rel="noreferrer" target="_blank">https://mail.python.org/mailman/listinfo/matplotlib-users</a><br /></blockquote>
</div>
</blockquote>
</div>
</body>
</html>