VECTOR
Ref Sec39.
/I/J/K/L /X/Y/Z/T /D /ASPECT /FRAME /LENGTH /NOAXIS /NOLABELS /OVERLAY /PEN /SET_UP /TITLE /COLOR /TRANSPOSE /HLIMITS /VLIMITS /XSKIP /YSKIP
Produces a vector arrow plot.
VECTOR[/qualifiers] x_expr,y_expr
In a curvilinear coordinate system (map projections)
VECTOR[/qualifiers] x_expr, y_expr, xcoords, ycoords (See the chapter on Customizing plots for the 4-argument Vector command)
Parameters
x_expr, y_expr
Algebraic expressions (or simple variables) specifying the x components and y components of the vector arrows. The expression pair will be inferred from the current context if omitted from the command line.
Note 1: An alternative method is to plot a vector field with filled polygons drawn in the shape of the vectors. In addition to representing the vectors' length and direction, the vectors may optionally be colored according to another quantity, i.e. wind vectors colored according to the atmospheric pressure. The scripts poly_vectors.jnl and mp_poly_vectors.jnl, included with Ferret beginning with v5.53, set up to make such plots. poly_arrow_key.jnl draws a arrow key. Please run the script poly_vec_demo.jnl for a demonstration of this capability. See the on-line version of this demo. for example figures.
Note 2: A second alternative is the plot_vectors.jnl script, which draws the vector arrows from u, v, lon, and lat, where these are 1-dimensional or 2-dimensional variables representing the vector components and the curvilinear coordinates.
Command qualifiers for VECTOR:
VECTOR/I=/J=/K=/L=/X=/Y=/Z=/T=
Specifies value or range of axis subscripts (I, J, K, or L), or axis coordinates (X, Y, Z, or T) to be used when evaluating the expression being plotted.
VECTOR/D=
Specifies the default data set to be used when evaluating the expression pair being plotted.
VECTOR/ASPECT
Adjusts the direction of the vectors to compensate for differing axis scaling.
yes? VECTOR/ASPECT[=aspect_ratio] x_expr, y_expr...
The size of vectors is unchanged—only the direction is modified. Under most circumstances /ASPECT should be specified. The aspect ratio is (Y-scale/X-scale). If the plot lies in the latitude/longitude plane the aspect ratio correction will be adjusted as a function of COS(LATITUDE) on the plot.
For example, in a typical oceanographic XZ plane plot the vertical (Z) axis is in tens of meters while the horizontal (X) axis is in hundreds of kilometers. This means the vertical scale is greatly magnified in comparison to the horizontal. The /ASPECT qualifier correspondingly magnifies the vertical component of the vector relative to the horizontal while preserving the length of the vector. The magnification factor is documented on the plot.
If no aspect ratio is specified by the user (e.g. VECTOR/ASP with no value), then Ferret will plot the vectors so that the two components' relative sizes shows their ratio. (In an XZ plane, then, ocean velocity vectors will nearly always appear horizontal) .
VECTOR/FLOWLINE (alias FLOWLINE) draws continuous flowlines from the vector components U and V. The qualifier /DENSITY controls the number of lines drawn. The values of /DENSITY are positive integers. /XSKIP and /YSKIP are not valid when the /FLOWLINE qualifier is used. There is also a 4-argument form of this command for drawing flowlines in curvilinear coordinates. Note that Ferret does not compute a stream function, but draws a pathline integration of a 2-dimensional instantaneous flow field. In a 3-dimensional flow field the plots are only useful as a qualitative visualization tool.
The size of the arrows indicates the speed of the flow. Lines are drawn until they intersect a border of the region or another line.
As with the standard VECTOR command, the /ASPECT qualifier adjusts the direction of the vectors to compensate for differing axis scaling. Under most circumstances /ASPECT should be specified.
The underlying algorithm is used with permission from the GrADS program. Our thanks to COLA, the Center for Ocean-Land-Atmosphere Studies, for access to this technique.
Example 1:
yes? USE coads_climatology
yes? SET REGION/x=150e:130w/y=40s:50n/l=6
yes? FLOW/ASPECT/DENSITY=4 uwnd,vwnd
Example 2:
yes? USE coads_climatology
yes? SET REGION/x=0:360/y=70s:70n/l=1
yes? go mp_lambert_cyl
yes? set grid uwnd
yes? go mp_aspect
yes? FLOW/ASPECT/NOAXIS/NOLAB uwnd, vwnd, x_page, y_page
yes? go mp_fland; go mp_graticule
VECTOR/FRAME
Causes the graphic image produced to be captured as an animation frame in the file specified by SET MOVIE. In general the FRAME command is more flexible and we recommend its use rather than this qualifier.
VECTOR/LENGTH=
Controls the size of vectors.
yes? VECTOR/LENGTH[=value_of_standard]
If the /LENGTH qualifier is omitted Ferret automatically selects reasonable vector lengths. To reuse the vector length from the last VECTOR plot use VECTOR/LENGTH.
To specify the vector lengths manually use the value_of_standard argument. This associates the value "val" with the standard vector length, normally ½ inch. Note that the PPLUS command VECSET can be used to modify the length of the standard vector. This is also the length that is displayed in the vector key.
Example:
yes? VECTOR/LENGTH=100 U,V
Creates a vector arrow plot of velocities with ½ inch vectors for speeds of 100.
VECTOR/NOAXIS
Suppresses all axis lines, tics, and labeling so that no box appears surrounding the contour plot. This is especially useful for map projection plots.
VECTOR/NOLABELS
Suppresses all plot labels.
VECTOR/NOKEY
Suppresses key at the bottom of the plot which shows the vector length. Use in conjunction with /NOLABELS to remove the name of the variables on overlay plots..
VECTOR/OVERLAY
Causes the indicated vector field to be overlaid on the existing plot.
VECTOR/COLOR=
Specifies the line color for the vectors. The available color names are Black, Red, Green, Blue, LightBlue, Purple, and White (not case sensitive), corresponding to the /PEN values 1-6, respectively. (/COLOR also accepts numerical values.). Note that White is only available for the default THICKNESS=1.
yes? VECTOR/PEN=green x_expr, y_expr
VECTOR/PEN=
Specifies the line style for the vectors. /PEN= takes the same arguments as the /LINE= qualifier for command PLOT. See the command PLOT/LINE=. "n" ranges from 1 to 18.
yes? VECTOR/PEN=n x_expr, y_expr
VECTOR/SET_UP
Performs all the internal preparations required by program Ferret for vector plots but does not actually render output. The command PPL can then be used to make changes to the plot prior to producing output with the PPL VECTOR command. This permits plot customizations that are not possible with Ferret command qualifiers. See the chapter "Customizing Plots".
Note that when the /SETUP qualifier is used the /XSKIP and /YSKIP qualifiers are ignored. In this case, use arguments to the PPL VECTOR command to achieve the thinning.
PPL VECTOR/qualifiers,xskip,yskip
yes? PPL VECTOR/over/3,4 specifies XSKIP=3 and YSKIP=4
VECTOR/TITLE=
Allows user to specify a plot title (enclosed in quotation marks). Without this qualifier Ferret selects a title based on information about x_expr and y_expr.
yes? VECTOR/TITLE="title_string" x_expr, y_expr
VECTOR/TRANSPOSE
Causes the horizontal and vertical axes to be interchanged. By default the X axis is always drawn horizontal and the Y and Z axes are drawn vertical. For Y-Z plots the Z data axis is vertical.
VECTOR/HLIMITS=
Specifies horizontal axis limits and tic interval. Without this qualifier, Ferret selects reasonable values.
yes? VECTOR/HLIMITS=lo:hi:increment x_expr, y_expr
The optional "increment" parameter determines tic mark spacing on the axis. If the increment is negative, the axis will be reversed.
This qualifier does not have any impact on the context of the expression being plotted. If data is on a modulo x axis but the arguments of the /HLIMITS qualifier represent a region outside the actual coordinates of the data, only the range including the actual coordinates is shown. Use /X=lo:hi or SET REGION or a context on the variable itself, var[X=lo:hi], to set the context for the expression.
The /HLIMITS and /VLIMITS qualifiers will retain their "horizontal" and "vertical" interpretations in the presence of the /TRANSPOSE qualifier. Thus, the addition of /TRANSPOSE to a plotting command mandates the interchange of "H" and "V" on the limits qualifiers
Specifies the axis range and tic interval for the vertical axis. See /HLIMITS (above)
VECTOR/XLIMITS=/YLIMITS=
Note: XLIMITS and YLIMITS have been deprecated. Please use HLIMITS and VLIMITS instead.
VECTOR/XSKIP=/YSKIP=
Draws every nth vector along the requested axis beginning with the first vector requested.
yes? VECTOR/XSKIP=nx/YSKIP=ny u,v
By default, Ferret "thins" vectors to achieve a clear plot. These qualifiers allow control over thinning.
Note that when the /SETUP qualifier is used the /XSKIP and /YSKIP qualifiers are ignored. In this case, use arguments to the PPL VECTOR command to achieve the thinning.
PPL VECTOR/qualifiers,xskip,yskip
yes? PPL VECTOR/over/3,4 specifies XSKIP=3 and YSKIP=4
VECTOR/AXES[=top,bottom,left,right]
Turns plotting of individual axes off and on. This replaces the use of the "PPL AXSET" command. The syntax is
yes? VECTOR/AXES[=top,bottom,left,right] u,v
where the arguments are 1 to turn the axis on and 0 to turn it off. For example:
yes? VECTOR/AXES=0,1,1,0 u,v ! Draws the bottom and left axes only
VECTOR/GRATICULE[=line specifiers]
(Introduced in Ferret version 5.6) Turns on graticule lines for the horizontal and vertical axes. These are lines across the plot at the tic marks. /GRATICULE sets both horizontal and vertical lines; to set each separately see /HGRATICULE and /VGRATICULE, below. The syntax is
yes? VECTOR/GRATICULE[=line or dash,COLOR=,THICKNESS=] u,v
where the default is a thin, solid black line. The line colors available are Black, Red, Green, Blue, LightBlue, Purple, and White. The thickness codes are 1, 2, or 3 and as for plot lines, thickness=1 is a thin line, thickness=3 is the thickest, and THICK specified with no value defaults to thickness=2. For clarity the arguments to GRAT may be placed in parentheses
yes? VECTOR/GRAT u,v ! default graticules
yes? VECTOR/GRAT=(LINE,COLOR=red,THIICK=3) u,v
yes? VECTOR/GRAT=(DASH,COLOR=lightblue) u,v
yes? VECTOR/FILL/GRAT=(DASH,COLOR=white) u,v
The above commands make settings for the large tic marks. If small tic marks are being plotted on the axes, we can make settings for them as well using keywords SMALL and LARGE. Place all of the arguments for the /GRAT qualifier in double quotes. Note that the PPL AXNMTC command sets the plotting of small tics, and that small tics are used by default for many time axes.
yes? ppl axnmtc 2,2
yes? VECTOR/GRAT="LARGE(COLOR=blue,thick),SMALL(COLOR=lightblue)" u,v
VECTOR/HGRATICULE[=line specifiers]/VGRATICULE[=line specifiers]
Turns on graticule lines and sets the line characteristics of the graticule for the horizontal or vertical axis separately. You may specify only one of /HGRAT or /VGRAT if desired. These are lines across the plot at the tic marks. The syntax is
yes? VECTOR/HGRATICULE[=line or dash,COLOR=,THICKNESS=] /VGRATICULE=line or dash,COLOR=,THICKNESS=] u,v
where the default is a thin, solid black line. The line colors available are Black, Red, Green, Blue, LightBlue, Purple, and White. The thickness codes are 1, 2, or 3 and as for plot lines, thickness=1 is a thin line, thickness=3 is the thickest, and THICK specified with no value defaults to thickness=2. For clarity the arguments to HGRAT may be placed in parentheses
yes? VECTOR/HGRAT/VGRAT u,v !this is equivalent to VECTOR/GRAT
yes? VECTOR/HGRAT=(LINE,COLOR=red,THIICK=3)/VGRAT=(color=green) u,v
yes? VECTOR/HGRAT=(DASH,COLOR=lightblue) u,v ! horizontal only
The above commands make settings for the large tic marks. If small tic marks are being plotted on the axes, we can make settings for them as well using keywords SMALL and LARGE. Place all of the arguments for the /HGRAT qualifier in double quotes. Note that the PPL AXNMTC command sets the plotting of small tics, and that small tics are used by default for many time axes.
yes? ppl axnmtc 2,2
yes? VECTOR/HGRAT="LARGE(COLOR=blue,thick),SMALL(COLOR=lightblue)" /VGRAT="LARGE(COLOR=blue,thick) u,v