Tick dimension location for mirror axis separately
ggermer
At the moment it is possible to select in the "Modify Axis" window (Ticks and Grids) whether the ticks can be displayed inside or outside (etc.) for each axis separately. My wish would be to be able to select this separately for the mirror axis of one existing axis.
Maybe you could add another menu for this below the drop down menu "Location" with the options: Same as main axis (Default), inside, outside, crossing and none.
Or is there already a way to make this happen?
Yes you can do something like that in multiple ways. The quick-fix method would be to add one of your data sets again attached to the axis on the opposite side, then modify the axis as you wish. You can hide the duplicated data afterwards.
A second method is setting up a free axis instead of a mirror axis. Free axes are not attached to particular data and can be moved and modified as desired, e.g., as a drop-in for a mirror axis. Then you can modify all properties just like any of the other axes. See here:
DisplayHelpTopic "Fake Axes"
The easiest way to set up this is to use the Transform Axis package (under Graph-> Packages). If you happen to have access to Igor 9, then you will find that this package has received many updates. Anyway, the tool allows for arbitrary transformations of an axis, but we can also use it to just add a mirror axis, which is still independent (but gets automatically scaled together with the main axis).
First, you need a transformation function, which however just passes the input through, like this (the 'TransAx_' prefix labels the function as useable with the package):
return in
End
Now set up a new transformed axis: Choose 'justMirror' as the function, then check 'Make it a Mirror Axis' and press Do It. It is sometimes a bit difficult to get the exact tick marks replicated as for the main axis, but otherwise you have all the benefits of a mirror axis with the added flexibility to modify most properties. I'll attach a test graph I created with this approach.
August 15, 2021 at 10:19 pm - Permalink
It's not so very difficult to tap into the free axis basis for what Transform Axis does. Here is a demonstration. First make a graph:
•display junk
Now add a "truly free" axis to the graph on the right side:
•ModifyFreeAxis mirrorR, master=left
•ModifyGraph freePos(mirrorR)={0,kwFraction}
The first command creates the mirror, the second one associates it with the left axis, and the last sets a positioning mode that works much better than the default (I wish we could change the default, but that would change graphs in old experiment files).
That second command causes the free axis range to follow the range of the left axis, but all the visual aspects can be set completely independently.
I think chozo was trying to avoid making you use the command line.
August 16, 2021 at 12:45 pm - Permalink
Thank you! I will try it.
August 18, 2021 at 01:11 am - Permalink