[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Non-linear axis

Craig Markwardt wrote:

> However, I think what you *really* want to do, is have two completely
> independent axes on either side of the plot, and have IDL choose
> "pleasant" tickmarks for each.  In that case, you probably want to
> tell PLOT not to make a righthand axis, and then draw one yourself.
> How about this example:
>   x = findgen(10)
>   y = x*x
>   plot, x, y, ystyle=8+1, xmargin=[10,10], ytitle='Main'
>   axis, yaxis=1, yrange=[0,2], ystyle=1, ytitle='Alternate'
> A little explanation might be in order.
>   * YSTYLE=8+1 ensures that IDL draws only one axis, with an exact range;
>   * XMARGIN tells IDL to leave more room on the right side for tick labels;
>   * YAXIS=1 tells IDL to make an axis on the right side, ticks facing left;
>   * YRANGE gives a new axis range;
>   * YSTYLE=1 enforces that exact range;
> This will give you a set of evenly spaced, but completely independent,
> tick marks on the left and right sides of the plot.
> If you really want to make *unevenly* spaced ticks (non-linear as you
> say), then you would do that in the AXIS call, specifying your desired
> tick positions and labels.  These you would have to calculate by
> yourself, as I showed in my previous example posting.
> Does this help?
> Craig
Thanks, it does help. I really want to have unevenly spaced ticks on the
right side, but they are not independent from the left side, and that
part of my problem. Somebody from the newsgroup-shy people mailed me a
sample routine which does what I want to do. The basic idea is
what tickvalues I want to have, calculating what value that would
to on left-side axis , using these tickpositions with YTICKV and
labeling the ticks via YTICKNAME. 

Thanks for all the help!