How to zoom the graph in one part

Hi Igor pro Users,

I am new user of Igor pro, as i am a research student. I would like to ask you that regarding the zooming the graph in one region, instead of using another graph inside the graph. I have seen many tutorials and read the manual to use but there is no clarification. I would like to zoom (2x or 3x) in the beginning of the graph.

Anybody could help in terms of the using the Igor pro functions or any other suggestions, please guide me.


need to zoom from 100 to 150 (bottom units)


Use the mouse to drag (Left click and hold as you move) a region you want to inspect.  When you release you will have the marquee selection with handles on the edge and corners. Those handles will allow you to fine tune region. Then with the mouse cursor inside the marquee Right click to bring up the contextual menu and select the zoom option you would like.  I often select Horiz Expand which only changes the x range while leaving the Y range as before.  But try the options.  You can use ctrl a (cmd a on a mac) to autoscale back to the original.  If you have zoomed in and have only subset of your data showing now another option is hold down the option key and the mouse cursor will change to a hand, and you can drag the graph around within the window.  You can also fling it and the graph will continue to move until you click again.



Do you want to zoom in to see better on your screen, or are you asking about a way to display your data with two different zoom levels on the same graph?

The marquee-dragging method is fantastic for zooming into an arbitrary range. Make sure to explore the 4 options that appear when you right-click on the marquee after you have drawn it, which allow you to zoom in/out for vertical or horizontal axes only.

If you want to do this through commands or code, another method is to place a pair of cursors on the trace, and then:

        SetAxis bottom xcsr(A), xcsr(B)

If you specifically want to zoom to a specific range, you can place cursors with a command and the appropriate calculations. For example, to zoom into the middle third of the x range, you could use:

TraceNameList to obtain the name of any trace on the graph

TraceNameToWaveRef to obtain the wave for that trace

numpnts to get the number of rows/elements in that wave

Divide that by three (call this oneThirdXrange)

Place cursor A on the left edge of this range:

cursor A traceName oneThirdXrange

and place cursor B on the right edge of this range:

cursor B traceName 2 * oneThirdXrange

Then use the above command to set the x axis to the range defined by the cursors