[Thread Prev][Thread Next][Index]

Re: some comments

Ansley and Billy,

Thank both of you for great suggestions. I tried your suggestion
on the viewport issue. I find that "viewport/axes" option works
great, but I still have two minor problems, (1) it appears that
the size of a viewport in the right column is slightly smaller
than the one in the left although "ylim" is set identical in the
two cases; (2) When I try to run another script following the first
script that contains "viewport/axes" statement, I get segmentation
fault and ferret is terminated. Here is an example of my viewport
statement lines:

define viewport/axes/xlim=0.1000,0.3550/ylim=0.800, 0.900/text=0.6 v01
define viewport/axes/xlim=0.1000,0.3550/ylim=0.685, 0.785/text=0.6 v02
define viewport/axes/xlim=0.1000,0.3550/ylim=0.570, 0.670/text=0.6 v03
define viewport/axes/xlim=0.1000,0.3550/ylim=0.455, 0.555/text=0.6 v04
define viewport/axes/xlim=0.1000,0.3550/ylim=0.330, 0.430/text=0.6 v05
define viewport/axes/xlim=0.3725,0.6275/ylim=0.800, 0.900/text=0.6 v06
define viewport/axes/xlim=0.3725,0.6275/ylim=0.685, 0.785/text=0.6 v07
define viewport/axes/xlim=0.3725,0.6275/ylim=0.570, 0.670/text=0.6 v08
define viewport/axes/xlim=0.3725,0.6275/ylim=0.455, 0.555/text=0.6 v09
define viewport/axes/xlim=0.3725,0.6275/ylim=0.330, 0.430/text=0.6 v10
define viewport/axes/xlim=0.6450,0.9000/ylim=0.800, 0.900/text=0.6 v11
define viewport/axes/xlim=0.6450,0.9000/ylim=0.685, 0.785/text=0.6 v12
define viewport/axes/xlim=0.6450,0.9000/ylim=0.570, 0.670/text=0.6 v13
define viewport/axes/xlim=0.6450,0.9000/ylim=0.455, 0.555/text=0.6 v14
define viewport/axes/xlim=0.6450,0.9000/ylim=0.330, 0.430/text=0.6 v15

I find your suggestion on the legend-drawing very usuful too. Thanks.

I have another new question on vector-plot. I like "centered_vectors"
script very much because I can control the size (length and width) of
arrow head by editing "scattered_vectors" script. Only problem I have
is that the dot at the center of each arrow is too large. Is it
possible to remove or reduce the size of those dots?

All the best,


Ansley Manke wrote:
Hi Sang-ki -
It's nice to hear your enthusiasm about Ferret.

1) When defining viewports, the /TEXT qualifier changes the text size
by changing the lengths of the axes, rather than any direct change to
text label sizes. I have a couple of alternate suggestions. Have you
ever used the /AXES qualifier for DEFINE VIEWPORT? This makes
the definition of the viewport by placing the axes at the locations you
specify rather than the edges of the margins. This sounds like what you're

Another idea is to use your "magic numbers" and use the PPLUS LABSET
command to set the character sizes for labels explicitly, rather than using
the /TEXT qualifier. Here's the documentation on LABSET. See
Appendix B Sec 9.39 for the documentation on LABSET. This is not as
convenient as the PPLUS call needs to be made on each plot command:

yes? set view v01
yes? plot/set my_var
yes? ppl labset 0.2, 0.15, 0.15, 0.2
yes? ppl plot

2) The legend-drawing scripts are user contributions; we depend on users
to contribute various useful scripts they develop. One way to get a symbol
along with the line sample is to put it in as part of the label; these commands
will put the symbol at the end of the line:

go legline_nu 0.00 0.05 0.084 1 0.1 "@pm01@SR Q_C_S_R"
go legline_nu 0.20 0.05 0.084 2 0.1 "@pm03@SR Q_C_R_F"
go legline_nu 0.40 0.05 0.084 3 0.1 "@pm17@SR Q_L_A_T_(_T_)"
go legline_nu 0.60 0.05 0.084 4 0.1 "@pm19@SR Q_L_A_T_(_W_)"

Sang-ki Lee wrote:

Steve and Ansley,

Great. Both suggestions worked for me. One mistery solved!

I have been trying so many different graphic packages so far,
including IDL, SPLUS(R), Surfer (Grapher) and NCL(NCAR).
Although Mathlab is the most popular software in where I work
(We have only two ferret users here), the ferret is the best
software for me. In fact, I cannot live a day with it.
However, I have two major complains:

(1) The following is the typical viewport statement that I use.
As you can see, ylim for the first viewport is ylim=0.651, 0.975,
and ylim=0.528, 0.852 for the second one. I came up with these
values by trial and error to get rid of space between the two
plots. As you can see, the magic number is (0.201 = 0.852 - 0.651).
But, if I change the text size, this magic number changes.....
To make a long story short, it would be very nice if I can use
something like ylim=0.500, 1.000, and ylim=0.000, 0.500 instead.

define viewport/xlim=0.0000,0.6025/ylim=0.651, 0.975/text=0.6 v01
define viewport/xlim=0.0000,0.6025/ylim=0.528, 0.852/text=0.6 v02
define viewport/xlim=0.0000,0.6025/ylim=0.405, 0.729/text=0.6 v03
define viewport/xlim=0.0000,0.6025/ylim=0.282, 0.606/text=0.6 v04
define viewport/xlim=0.0000,0.6025/ylim=0.159, 0.483/text=0.6 v05
define viewport/xlim=0.0000,0.6025/ylim=0.036, 0.360/text=0.6 v06
define viewport/xlim=0.3976,1.0000/ylim=0.651, 0.975/text=0.6 v07
define viewport/xlim=0.3976,1.0000/ylim=0.528, 0.852/text=0.6 v08
define viewport/xlim=0.3976,1.0000/ylim=0.405, 0.729/text=0.6 v09
define viewport/xlim=0.3976,1.0000/ylim=0.282, 0.606/text=0.6 v10
define viewport/xlim=0.3976,1.0000/ylim=0.159, 0.483/text=0.6 v11
define viewport/xlim=0.3976,1.0000/ylim=0.036, 0.360/text=0.6 v12

(2) I use the following combination of the commands to get
my legend for xyplot. What these do is to plot legend lines,
then put symbols right at the middle of each legend line. I do
spend too much time in order to put the symbols at the right
locations. It would be very nice if you invent a new legline
like script that does all these things automatically.

go legline_nu  0.00 0.05 0.084  1 0.1 "Q_C_S_R"
go legline_nu  0.20 0.05 0.084  2 0.1 "Q_C_R_F"
go legline_nu  0.40 0.05 0.084  3 0.1 "Q_L_A_T_(_T_)"
go legline_nu  0.60 0.05 0.084  4 0.1 "Q_L_A_T_(_W_)"
label/nouser   0.45, 0.13, 0,0,0.08,"@pm01"
label/nouser   1.57, 0.13, 0,0,0.08,"@pm03"
label/nouser   2.70, 0.13, 0,0,0.08,"@pm17"
label/nouser   3.80, 0.13, 0,0,0.08,"@pm19"
label/nouser   3.0,  -0.5, 0,0,0.10,"month"

Thanks a lot!


Steve Hankin wrote:

Hi Sang-ki,

The FILL command is an interpolation operation (it has to find a contour path between grid cells). The SHADE command is not (it simply treats each cell independently). Normally Ferret makes a small adjustment in the extent of the plotting region to accomodate the 1/2 grid cell variation that exists between these two methods of rendering the graphics.

To see this difference look at the X axis limits used by the PLOT+ engine ("ppl list xaxis") in this output:

yes? use coads_climatology
yes? shade/x=130e:80w/y=20s:20n/l=1 sst
yes? ppl list xaxis
*LO= 1.30E+02 HI= 2.80E+02* TIC= 2.00E+01 LEN= 8.00E+00
yes? fill/x=130e:80w/y=20s:20n/l=1 sst
yes? ppl list xaxis
*LO= 1.31E+02 HI= 2.79E+02* TIC= 2.00E+01 LEN= 8.00E+00

>From what you've described I presume that you are using /OVERLAY or /HLIMITS and thereby (accidentally?) taking control of the extent of the plotting region. The following command illustrates how you can create white space at the edges this way:

yes? fill/x=130e:80w/y=20s:20n/l=1/hlimits=130e:80w sst

Solution: As long as you set the data region ("x=130e:80w" above) to be at least a grid cell larger on each side than the plotting region ("hlimits=130e:80w" above) you can avoid this problem.

- steve


Ansley Manke wrote:

Hi Sang-ki
Yes, we've seen this. Isyour data on an irregularly spaced
grid? Depending on the data and the grid it's on, the algorithm
that does the fill plot can't always fill the entire region. A
workaround is to do a SHADE plot and then overlay it with
your FILL command, using the same contour levels.


Sang-ki Lee wrote:

> Hi. My problem is that when "fill" command is used for colored contour,
> sometimes I get white space at top or side edge of the colored contour
> plot. This problem come and go, and it is nothing to do with missing
> data point. Has anyone noticed this problem?
> I am using v5.60 on Linux.
> Thank you.
> Sang-ki


Steve Hankin, NOAA/PMEL -- Steven.C.Hankin@noaa.gov
7600 Sand Point Way NE, Seattle, WA 98115-6349
ph. (206) 526-6080, FAX (206) 526-6744

Dr. Sang-ki Lee
University of Miami
4600 Rickenbacker Causeway
Miami, FL 33149 USA
Tel) 305-361-4521
Fax) 305-361-4412
E-mail) sang-ki.lee@noaa.gov
Dr. Sang-ki Lee
4301 Rickenbacker Causeway
Miami, FL, 33149 USA

[Thread Prev][Thread Next][Index]

Dept of Commerce / NOAA / OAR / PMEL / TMAP

Contact Us | Privacy Policy | Disclaimer | Accessibility Statement