Code covered by the BSD License  

Highlights from
Linked Pan and Zoom

Be the first to rate this file! 11 Downloads (last 30 days) File Size: 7.05 KB File ID: #26282

Linked Pan and Zoom

by

 

05 Jan 2010 (Updated )

Pans and zooms multiple axes on the same figure, with full control of axes linking.

| Watch this File

File Information
Description

Pan with left click mouse drag, draw a zoombox with right click drag, and view all data with double-click. This also retains any existing WindowButtonXFcn the figure has, as well as any axes UIContextMenus.

I wrote this for live data capture, as linkaxes sets XLimMode to "manual" - which means the axes wouldn't automatically resize for new data.

panzoom(figureHandle, axesHandles)
Adds the functionality to that figure, ONLY to the axes handles specified.

panzoom(figureHandle, axesHandles, xLink)
panzoom(figureHandle, axesHandles, xLink, yLink)
Assuming you have four axes handles: 1, 2, 3, 4. You could link all of the x axes together: xLink = [1, 2, 3, 4], or you could link them in pairs in a cell array: xLink = {[1, 2], [3, 4]}. The same applies for yLink. xLink or yLink can also be empty.

MATLAB release MATLAB 7.1.0 (R14SP3)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (1)
10 May 2011 Joseph

This did not work for me.

First, in line 110, I believe there is an error 'oget' should be 'get'.

After I changed that, I received the following error, it could not find the referenced function 'getposition':

??? Undefined function or method 'getposition' for input arguments of type 'double'.

Error in ==> panzoom>windowButtonDownFcn at 152
axesPositions = getposition(axesHandles, 'pixels');

??? Error while evaluating figure WindowButtonDownFcn

Updates
10 May 2011

Fixed the "oget" error, and added back in a dependency for the helper function "getposition" (yes I know, very sloppy).

Contact us