|
From: Ethan M. <merritt@u.washington.edu> - 2007-11-28 18:45:18
|
Here is a request I have seen on the newsgroup in the past.
Now I am wanting it myself for some dynamically-created plots.
Say you are plotting some sets of data A, B, C, D.
The data in sets A and B are of primary interest, and you
want to auto-scale the axes to capture their full range.
C and D are for reference only (perhaps previous measurements
of two different classes). You want these on the plot for
comparison, but one or both may be way out of the range of A and B.
So we want to autoscale the axes to the contents of A and B.
C and D should be on that same scale, but should *not* affect autoscaling.
The only way I know of to do this now involves multiple passes.
1) plot A and B with autoscale; save the x/y range information
2) replot A, B, C, D using previously saved ranges.
This does work. But it is awkward, particularly for volatile data,
where we need an extra step of first making a snapshot of A and B.
I am thinking about possible changes that would provide an easier path
1) allow an option "noautoscale" associated with each item in the
plot command:
plot A, B, C noautoscale, D no autoscale
2) provide a lock-to-primary-axis option for axes x2 and y2.
This would allow a sequence of plot commands like
set xrange [*:*]
set yrange [*:*]
set y2range locked
set x2range locked
plot A, B, C axes x2y2, D axes x2y2
Any thoughts or preferences between the two, or suggestions for a
different approach?
Have I overlooked a less obvious option that already exists?
--
Ethan A Merritt
|