Alpha Shape(Triangulation)
Description
Returns the alpha shape for the given triangulation.
Border Box(<Left(pix)>, <Right(pix)>, <Top(Pix)>, <Bottom(Pix)>, <Sides(0)>, db)
Description
Constructs a bordered display box that contains another display box. Optional arguments (Left, Right, Top, Bottom) add space between the border box and what it contains. The other optional argument (Sides) draws borders around the border box on any single side or combination of sides; draws the border in black or the highlight color; makes the background transparent or white or erases the background of a display box that contains it.
Returns
The display box.
Arguments
Left
An integer that measures pixels.
Right
An integer that measures pixels.
Top
An integer that measures pixels.
Bottom
An integer that measures pixels.
Sides
An integer that maps to settings for the display box.
db
a display box object (for example, a text box or another border box).
Notes
The formula for deriving the integer for Sides is: 1*top + 2*left + 4*bottom + 8*right + 16*highlightcolor + 32*whitebackground + 64*erase. Thus, if you want to just draw a black border on the top and bottom, 1+4 = 5. If you want that same box with a white background, 5+32 = 37.
See Border Box in the Scripting Guide.
Box Plot Seg(<data>, <frequency>, <weight>, <vertical(Boolean)>)
Description
Returns a display seg that represents a box plot based on the passed x and y values.
Returns
The display box (a box plot).
Optional Arguments
data
The data values within the box plot.
frequency
The frequency values within the box plot.
weight
The weights for observations on continuous Ys.
vertical(Boolean)
A vertical (1) or horizontal(0) box plot.
Example
win = New Window( "Box Plot Seg Example",
Graph Box(
Frame Size( 40, 180 ),
Y Scale( 0, 100 ),
Box Plot Seg(
[20, 30, 40], // data
[1, 1, 3], // frequencies
[1, 1, 1], // weights
1 // vertical
)
)
);
Busy Light(< <<Automatic(Boolean), <Size(x, y)>, < <<Disable>)
Description
Creates a rotating image to indicate a busy process.
Returns
A rotating image.
Arguments
<<Automatic(Boolean)
Rotates the image.
Size(x, y)
Specifies the size of the image.
<<Disable
Hides the image.
Example
win = New Window( "Example",
blb = Busy Light( <<Automatic( 1 ), Size( 50, 50 ) ) );
Button Box("title", <<Set Icon("path"), "script" <<Set Icon Location("left, "right")
Description
Constructs a button with the text title that executes script when clicked.
Returns
The display box (button box).
Arguments
title
A quoted string or a string variable.
script
A quoted string or a reference to a string where the string is a valid JSL script.
<<Set Icon("path")
Displays the image in the pathname on the button. Most common graphic formats are supported, such as GIF, JPG, PNG, BMP, TIF. Since the title argument is optional, you can create a button with only a text title, with only an icon, or with both a text title and an icon. In the last case, the icon is placed next to the text title.
<<Set Icon Location("right" or "left")
Allows the position of the icon on a button to be either left or right of the text.
Example
The following example shows a simple button box. When the user clicks the button box, "Pressed" is printed to the log.
win = New Window( "Simple Example",
ex = Button Box( "Press me" )
);
ex << Set Script( Print( "Pressed" ) );
Notes
Line-break characters are ignored in button boxes.
See Button Box in the Scripting Guide.
Calendar Box("title", < <<Date, <<Min Date, <<Max Date, <<Show Time>)
Description
Constructs a pop-up calendar with selectable days and time.
Returns
The display box (calendar box).
Arguments
title
A quoted string or a string variable.
<<Date
The currently selected date.
<<Min Date
The earliest date that can be selected.
<<Max Date
The latest date that can be selected.
<<Show Time
The time that can be specified.
Example
The following example creates a calendar with October 5, 1989 initially selected. The minimum date and maximum date are specified, so the user can select only dates in that range.
New Window( "Calendar Box Example", cal = Calendar Box() );
date = Date MDY (10, 5, 1989);
cal << Date( date );
cal << Show Time( 0 ); // omit the time
/* earliest date that can be selected is 60 days before 10/5/1989
"start" truncates the value so the time is not included */
cal << Min Date( Date Increment(date, "Day", -60, "start" ) );
// latest date that can be selected is 60 days after 10/5/1989
cal << Max Date( Date Increment(date, "Day", 60, "start" ) );
cal << Set Function( Function( {this}, Print( Abbrev Date(this << Get Date()) ) ) ); // print the abbreviated date to the log
Notes
See Calendar Box in the Scripting Guide.
Cell Plot(Y(column(s)), <X(column)>)
Description
Displays each value in a cell graph.
Check Box({list}, <script>)
Description
Constructs a display box to show one or more check boxes.
Returns
The display box (Check Box).
Arguments
list
a list of quoted strings or a reference to a list of strings.
script
an optional JSL script.
Messages
<<Get(n)
Returns 1 if the check box item specified by n is selected, or 0 otherwise.
<<Set(n, 0|1)
Sets the check box item specified by n as either selected (1) or cleared (0).
<<Get Selected
Returns a list of strings that contain the names of the check box items that are selected.
<<Enable Item(n, 0|1)
Sets the check box item specified by n as either enabled (1) or disabled (0). The state of a disabled check box cannot be changed.
<<Item Enabled(check box item)
Returns 0 or 1 depending on whether the specific check box item is enabled.
Example
Create three check boxes labeled “one”, “two”, and “three”. The first check box is selected.
New Window( "Example", Check Box( {"one", "two", "three"}, <<Set( 1, 1 ) ) );
Notes
See Check Box in the Scripting Guide.
Col Box(title, display boxes)
Description
Returns a column box made up of the specified display boxes.
Arguments
title
The title of the column.
display boxes
Display boxes that hold content within the column box.
Example
win = New Window( "Example",
exx = 1;
exy = 4;
exz = 8;
Table Box(
String Col Box( "strings", {"x", "y", "z"} ),
Col Box(
"boxes",
Slider Box( 0, 10, exx, Show( exx ) ),
Slider Box( 0, 10, exy, Show( exy ) ),
Slider Box( 0, 10, exz, Show( exz ) )
)
);
);
Col List Box(<Data Table ("name" )>, <"all"|"character"|"numeric">, <width(pixels)>, <grouped>, <maxSelected(n)>, <nlines(n)>, <MaxItems(n)>, <MinItems(n)>, <On Change(expr)>, < <<Set Modeling Type("Any"|"Continuous"|"Ordinal"|"Nominal"|Multiple Response"|"Unstructured Text"|"Vector"|"None"|"Row State") >, < << Set Data Type(Any|Numeric|Character)>, <script>)
Description
Constructs a display box to show a list box that allows selection of data table columns.
Returns
The display box (Col List Box).
Arguments
name
The name of the data table.
all | character | numeric
an optional command that adds all columns of the current data table into the list. Omitting "all" results in an empty collistbox with the “optional” label. To display “optional character”, specify "character". To display “optional numeric”, specify "numeric".
width(pixels)
an optional command that sets the width of the list box to pixels. Pixels is a number that measures pixels.
grouped
An optional command that displays grouped columns in the box.
maxSelected(n)
an optional command that sets whether only one item can be selected. For n>1, n is ignored.
nlines(n)
an optional command that sets the length of the list box to n number of lines. n is an integer.
script
an optional script.
MaxItems(n)
An optional number that only allows n columns to be added to the list.
MinItems(n)
An optional number that only requires at least n columns for the list. If n=2, the top two slots in the Col List Box an initial display of “required numeric” (or whatever you set the data type to be).
On Change(expression)
An optional command that evaluates the expression when the selection in the list changes. Dragging between two column list boxes that have this argument results in both expressions being evaluated. The expression for the target being dragged is evaluated first, then the expression for the source is evaluated.
Messages
<<Set Tips ( {"Tip text 1", "Tip text 2", ...} )
Sets tool tips for items in the list box. A null string or an empty list results in no tips. A list shorter that the list of items in the list box will use the last tip text for the remaining items in the list and the list box.
<<Set Tip ( "Tip text" )
Overrides any tool tips set using Set Tips() function. If there is a tip set for the box, you cannot set tips for each individual item.
Using Set Tip() with no arguments clears the list box tip and allows the individual item tool tips to be displayed.
Notes
– The maxSelected argument only affects whether one or more than one item can be selected. It does not enforce a limit greater than 1.
– Specialty modeling types can be used only in a role (determined by the platform) that explicitly accepts columns of the same type.
– See Col List Box in the Scripting Guide.
Col Span Box(title, display box args)
Description
Creates spanned columns headers inside a table box. The top column header spans two child column headers.
Returns
The display box (a Col Span Box).
Arguments
title
The title that appears in the box.
display box args
Display boxes.
Example
win = New Window( "Col Span Box",
<<Modal,
Table Box(
Col Span Box(
"Confidence Limits",
neb = Number Col Edit Box( "Upper limits", [0, 0] ),
Number Col Edit Box( "Lower limits", [0, 0] )
)
)
);
Notes
See Col Span Box in the Scripting Guide.
Column Dialog(ColList("rolename"), specifications)
Description
Draws a dialog box for column role assignments.
Returns
A list of commands that were sent and the button that was clicked.
Arguments
ColList
Specifies the name of at list one list to add variables to.
specifications
Any additional Dialog items (for example, Max Col, Datatype).
Notes
See Construct a Column Dialog in the Scripting Guide.
Combo Box({items <(tip string)>, ...}, <script>)
Description
Constructs a display box to show a drop-down list.
Returns
The display box (Combo Box).
Arguments
item
The items that the user can select.
tip string
The text that appears as hover help.
script
An optional JSL script.
Notes
See Combo Box in the Scripting Guide.
Context Box(displayBox, ...)
Description
Defines a scoped evaluation context. Each Context Box is executed independently of each other.
Returns
A display box.
Arguments
Any number of display boxes.
Contour Seg(Triangulation, [levels], <zColor([colors], <Cycle Colors|Interpolate Colors>)>, <Fill|Fill Between|Fill Below|Fill Above>, < Transparency([]|t)>)
Description
Returns a display seg that represents contours of a Triangulation.
Arguments
Triangulation
The columns to include in the Triangulation.
[levels]
A matrix of values that control the contour levels that are drawn.
zColor([colors]
(Optional) Colors for each level, specified as a matrix or list.
Cycle Colors|Interpolate Colors
(Optional) Cycle Colors alternates the colors (for example, red, green, red, green). With Interpolate Colors, the first contour is red, and the last is green. The contours between smoothly blend the colors.
Fill|Fill Between|Fill Below|Fill Above
(Optional) Fill Below draws the first two regions. Fill Between draws only the middle region. Fill Above draws the last two regions.
Transparency([]|t)
(Optional) The transparency specified as a number or matrix.
Example
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
tri = Triangulation( X( :X, :Y ), Y( :POP ) );
{xx, yy} = tri << Get Points();
win = New Window( "Contour Seg Example",
g = Graph Box(
X Scale( Min( xx ) - .1, Max( xx ) + .1 ),
Y Scale( Min( yy ) - .1, Max( yy ) + .1 ),
Contour Seg(
tri,
[0, 400, 1000, 2000, 9000],
zColor( 5 + [64 32 0 16 48] ),
Transparency( [1, 1, 1, 1, 1] )
)
)
);
Notes
The triangulation is computed using the Xs, and the Y is a continuous variable defined at each position. The [levels] in this case defines values of POP that are drawn as lines, one line per level. If any Fill argument is specified, then the filled regions are [level1, level2], [level2, level3], ..., [level-n].
Current Journal()
Description
Gets the display box at the top of the current (topmost) journal.
Returns
Returns a reference to the display box at the top of the current journal.
Current Report()
Description
Gets the display box at the top of the current (topmost) report window.
Returns
Returns a reference to the display box at the top of the current report window.
Current Window()
Description
Returns a reference to the current window.
Data Filter Context Box(display box)
Description
Returns a display box that defines the extent of the local data filters that a display tree contains. Data filters and Data Filter Context Boxes can be arranged in a hierarchy and shared among platforms or boxes that the Data Filter Context Boxes contain.
Notes
See Filtering Display Boxes in the Scripting Guide for more information and examples.
Data Filter Source Box(display box)
Description
Defines which graph is the “source” of the selection filter. Selected rows in reports that are within the Data Filter Source box are included for analysis in the other reports that are within a common Data Filter Context Box.
Notes
See Filtering Display Boxes in the Scripting Guide for more information and examples.
Data Table Box(data table)
Description
Returns a table box the represents the specified data table.
Example
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
win = New Window( "Example", Data Table Box( dt ) );
Data Table Col Box(col)
Description
Returns a column box that corresponds to the specified data table column.
Example
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
win = New Window( "Example",
Table Box( Data Table Col Box( :name ), Data Table Col Box( :height ) )
);
Dialog(contents)
Dialog is deprecated. Use New Window() with the Modal argument instead. See Convert Deprecated Dialog to New Window in the Scripting Guide.
Excerpt Box(report, subscripts)
Description
Returns a display box containing the excerpt designated by the report held at number report and the list of display subscripts subscripts. The subscripts reflect the current state of the report, after previous excerpts have been removed.
Expr As Picture(expr(...), <width(pixels)>)
Description
Converts expr() to a picture as it would appear in the Formula Editor.
Returns
Reference to the picture.
Argument
expr(...)
Place any valid JSL expression that can be displayed as a picture inside expr().
width(pixels)
an optional command that sets the width of the box to pix. pix is a number that measures pixels.
Filter Col Selector(<data table(name)>, <width(pixels)>, <Nlines(n)>, <script>, <OnChange(expr)>)
Description
Returns a display box that contains a list of items. Control allows column filtering.
Get Project(title|index|display box|window)
Description
Returns a single project.
Examples
The following examples show how to get the window title of various projects.
Get Project( 1 ) << Get Window Title;
// first open project
Get Project( "My Project" ) << Get Window Title;
// first project named “My Project”
Get Project( display box ) << Get Window Title;
// parent project of the specified display box
Get Project List()
Description
Returns a list of all open projects.
Example
Get Project List() << Get Window Title;
// list of the titles of all open projects
Get Window(<Project(title|index|display box|window),> <Type("string"),>, title|index|display box)
Description
Returns a reference to a specific open window by title, index, or display box. When run in a project, Get Window() returns windows from the current project.
Optional Arguments
Project
Specifies the title, index, display box, or window from another project.
Type
To limit the search to particular types of windows, use the Type () argument and one of these strings: "Data Tables", "Journals", "Reports", or "Dialogs".
Examples
The following examples show how to get the window title of various windows.
Get Window( 1 ) << Get Window Title;
// first window in the current project
Get Window( "Big Class" ) << Get Window Title;
// Big Class window in the current project
Get Window( ob ) << Get Window Title;
// parent window of specified display box in the current project
Get Window( Project(), 1 ) << Get Window Title;
// first window, no project (global scope)
Get Window( Project( myProject ), "Big Class" << Get Window Title;
// Big Class window in the specified project
Get Window List(<Project(title|index|display box),><Type ("string")>)
Description
Returns a list of currently open windows. By default, Get Window List() returns a list of the titles of currently open windows in the current project. You can return an open window list from something other than the current project by using the Project() argument. To limit the search to particular types of windows, use the Type () argument and one of these strings: "Data Tables", "Journals", "Reports", or "Dialogs".
Optional Arguments
Project
Specifies the title, index, display box, or window from another project.
Type
To limit the search to particular types of windows, use the Type () argument and one of these strings: "Data Tables", "Journals", "Reports", or "Dialogs".
Examples
Get Window List() << Get Window Title;
// list of the titles of open windows in the current project
Get Window List( Type( "Reports" ) ) << Get Window Title;
// list of the titles of open reports in the current project
Get Window List( Project( 0 ), Type( "Reports" ) ); // positional arguments
// list of the titles of open reports outside of a project
Get Window List( 2 );
// second window list
Global Box(global)
Description
Constructs a box for editing global value directly.
Notes
See Global Box in the Scripting Guide.
Graph()
See Graph Box(properties, script).
Graph 3D Box(properties)
Description
Constructs a display box with 3-D content.
Returns
The display box.
Arguments
properties
Properties can include: framesize(x, y), Xname("title"), Yname("title"), Zname("title").
Note
This display box constructor is experimental.
Graph Box(properties, script)
Graph(properties, script)
Description
Constructs a graph with axes.
Returns
The display box (Graph Box).
Arguments
properties
Named property arguments: title("title"), XScale(low, high), YScale(low, high), FrameSize(h, v), XName("x"), YName("y"), SuppressAxes.
script
Any script to be run on the graph box.
Notes
See Create New Graphs from Scratch and Customize Them and Graph Box in the Scripting Guide.
H Center Box(<child box>)
Returns a display box that contains the child display box argument. The box is centered in the horizontal space defined by the maximum size of that child display box and all of the other siblings of the center box.
H List Box(<Align("center"|"bottom")>, display box, <arguments>)
Description
Creates a display box that contains other display boxes and displays them horizontally.
Arguments
Align
Specify bottom or center alignment of the contents in the list box. The contents are bottom aligned by default.
display box
Any number of display box arguments can be contained in the list box.
Notes
See H List Box and V List Box in the Scripting Guide.
H Scroll Box(<Size(h)>, display box)
Description
Returns a display box that positions a larger child box using a horizontal scroll bar.
Arguments
size(h)
The horizontal length of the scroll bar.
Notes
The flexible argument is deprecated. Use Set Auto Stretching instead. See V Scroll Box(<size(v)>, display box) for an example.
H Sheet Box(<<Hold(report), display boxes)
Description
Returns a display box that arranges the display boxes provided by the arguments in a horizontal layout. The <<Hold() message tells the sheet to own the report(s) that is excerpted.
Notes
See H Sheet Box and V Sheet Box in the Scripting Guide.
H Splitter Box(<size(h,v)>, display box, <arguments>)
Description
Returns a display box that arranges the display boxes provided by the arguments in a horizontal layout (or panel). The splitter enables the user to interactively resize the panel.
Arguments
display box
Any number of display box arguments can be contained in the splitter box.
Optional Arguments
size(h,v)
Specifies the size of the splitter box in pixels. This size is for the outer splitter box. Inner display boxes are proportionately sized according to the width and height of the outer splitter box.
<<Size(n)
Specifies the proportions of the last panel. <<Size(.25) resizes the last panel to 25% the splitter box height (or width, for vertical splitter boxes).
<<Set Sizes({n,n})
Specifies the proportions of each panel. db<<Set Sizes({.75, .25}) sizes the first panel to 75% and the second panel to 25% of the splitter box height (or width, for vertical splitter boxes).
<<Close Panel(n, <Boolean>)
Closes the panel that you specify. <<Close Panel(2) closes the second panel. With three or more panels, you must include the second Boolean value. That value indicates which panel expands to fill the space left by the closed panel.
– <<Close Panel(2,0) closes the second panel; the following sibling takes the extra space.
– <<Close Panel(2,1) closes the second panel; the preceding sibling takes the extra space.
<<Open Panel(n, <Boolean>)
Opens the panel that you specify. With three or more panels, you must include the second Boolean value. Works similar to <<Close Panel described above. The panels are initially opened. You use <<Open Panel only after using <<Close Panel.
<<Get Sizes()
Returns the proportions of each panel as a list.
Notes
See H Splitter Box and V Splitter Box in the Scripting Guide.
Hier Box("text", Hier Box(...), ...)
Description
Constructs a node of a tree (similar to Diagram output) containing text. Hier Box can contain additional Hier Boxes, allowing you to create a tree. The text can be a Text Edit Box.
Hist Seg([data], <[freq column]>, <[weight column]>, <vertical(Boolean)>, <Row States()>
Description
Returns a histogram seg.
Arguments
data
The data in matrix format.
freq column
(Optional) The frequency column in matrix format.
weight column
(Optional) The weight column in matrix format.
vertical(Boolean)
(Optional) Displays the histogram vertically by default (or if set to 1). Display the histogram horizontally by setting the value to 0.
Icon Box("name")
Description
Constructs a display box containing an icon, where the argument is a name such as Popup , Locked , Labeled , Sub , Excluded , Hidden , Continuous , Nominal , or Ordinal . The argument can also be a path to an image.
Argument
name
Quoted string that is the name of a JMP icon or the path to an icon.
Example
Icon Box( "Nominal" ) constructs a display box that contains the Nominal icon.
Icon Box( "$SAMPLE_IMAGES/pi.gif" ) inserts the pi.gif sample image.
Notes
– Some icons are used in both Windows and . Other icons are platform specific.
– Consider installing the Built-In JMP Icons add-in. The add-in lets you view icons interactively and see what they look like in different contexts. Download the add-in from https://community.jmp.com/t5/JMP-Add-Ins/Built-In-JMP-Icons/ta-p/42251.
If Box(Boolean, display boxes)
Description
Constructs a display box whose contents are conditionally displayed.
Arguments
Boolean
1 displays the display boxes inside the If Box; if 0, does not display them.
display boxes
Any display box tree.
If Seg(<state(Boolean)>)
Description
Returns a display seg that shows or hides display seg children.
Arguments
state
Example
lines = [30 20 80 70, 10 90 90 10, 40 20 60 30];
win = New Window( "Lines Seg Example",
g = Graph Box( If Seg( true, <<Append( Lines Seg( lines ) ) ) )
);
Journal Box("Journal Text")
Description
Constructs a display box that displays the quoted string journal box. We recommend that you do not generate the journal text by hand.
Notes
See Journal Box in the Scripting Guide.
Line Seg(x, y, <Row States(dt | dt, [rows] | dt, {{rows}, ...} | {states} ) >, <Sizes(s)>)
Description
Creates a display seg of connected line segments. The optional third argument enables row state assignments from either a data table or independently.
Lines Seg([x1 y1 x2 y2, ...])
Description
Returns a display seg with a sequence of line segments for the passed x and y values.
Lineup Box(<NCol(n)>, <Spacing(pixels, <vspace>), display boxes, ...)
Description
Constructs a display box to show an alignment of boxes in n columns.
Notes
See Line Up Items in the Scripting Guide.
List Box({"item", ...}, <width(pixels)>, <maxSelected(n)>, <nLines(n)>, <script>)
Description
Creates a display box to show a list box of selection items. The argument can be a list of two-item lists containing the item name and a string that specifies the modeling type or sorting order. Item names are case sensitive by default. The icon appears next to the corresponding item in the list box.
Marker Seg(x, y, <Row States(dt | dt, [rows] | dt, {{rows}, ...}| {states} ) >, <Sizes(s)>)
Description
Creates a display seg with markers for all of the x and y values. The optional third argument enables row state assignments from either a data table or independently.
Matrix Box(x)
Matrix Box(matrix, < <<Column Names("col1", "col2", ...)>, < <<Row Names("row1", "row2", ...)>)
Description
Displays the matrix given in the usual array form.
Mouse Box(displayBoxArgs, messages)
Description
Returns a box that can make JSL callbacks for dragging and dropping, marking, or clicking and tracking mouse actions.
Arguments
displayBoxArgs
Specifies the object that the user interacts with, such as a Text Box or Button Box. See the Scripting Index in the Help menu.
Notes
See Mouse Box in the Scripting Guide.
Move to Project(<source(project)|destination(project)>, <windows({list of windows to move})>)
Description
Moves one or more windows into a project or out of a project, or between projects.
Arguments
source(project)
The project containing the windows that you want to move.
destination(project)
The project to which you want to move the windows.
windows({list of windows to move})
A list of windows to move to the project. If omitted, all windows will be moved. Note that the data table and all of its dependent reports will be moved. However, you need to specify only the data table name or report name in the windows argument to move it.
Example
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
report = dt << Run Script( "Bivariate" );
project = New Project();
// move the report and data table to a new project
Move to Project( destination( project ), windows( {report} ) );
New Image()
New Image(width, height)
New Image("filepath")
New Image (open ("url") )
New Image(picture)
New Image(matrix)
New Image("rgb"|"r"|"rgba", {matrix, ...})
Description
Creates a new image which can then be edited using JSL. The following file types are supported: PNG, JPG, GIF, BMP, or TIF.
Returns
An image.
Arguments
All argument sets are optional, but all arguments within each set are required.
width, height
Sets the width and height of the image in pixels.
"filepath"
A filepath to an image.
open "url"
Opens the image at the specified URL path.
picture
A JSL picture object.
matrix
The image as a matrix of JSL color pixels.
"rgb"|"r"|"rgba", {matrix, ...}
Specify the channels (rgb, r, or rgba) and provide a matrix of values (0.0-1.0) for each channel. Examples:
New Image( "r", [r matrix] );
New Image( "rgb", {[r matrix], [g matrix], [b matrix]} );
New Image( "rgba", {[r matrix], [g matrix], [b matrix], [a matrix]} );
New Project(arguments)
Description
Creates a project using the specified script.
Arguments
<<Add Bookmarks({<File(path)>, <Folder(path, Expanded(Boolean)>)>, <Group(name, <Expanded(Boolean)>, {contents}>)
Creates bookmarks for frequently used files in the project. The argument is a list of bookmark items, each of which is specified using File(), Folder(), or Group(). Group() accepts File(), Folder(), and Group() as children. See Create a Bookmark Group in the Scripting Guide for an example of how to construct the arguments.
<<Reset Layout
Sets the project to use the default layout.
<<Run Script
Specifies the data tables and reports that appear in the project.
<<Save(<path>)
Saves the project. Include a path and file name to save the project to a specific location. Save As is an alias.
<<Set Bookmarks({<File(path)>, <Folder(path, Expanded(Boolean)>)>, <Group(name, <Expanded(Boolean)>, {contents}>)
Sets the bookmarks for the project. The argument is a list of bookmark items, each of which is specified using File(), Folder(), or Group(). Group() accepts File(), Folder(), and Group() as children.
<<Set Layout
Sets the window layout of the project.
<<Show Bookmarks
Shows or hides the bookmarks.
<<Show Log
Shows or hides the log.
<<Show Window List
Shows or hides the Window List.
Example
The following example creates a project from BigClass.jmp and two reports.
project = New Project();
project << Run Script(
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Run Script( "Bivariate" );
dt << Run Script( "Distribution" );
);
Notes
Creating Projects in the Scripting Guide.
New Window("title", <arguments>, displayBox)
Description
Makes a new window with the indicated title (a required argument) and a display box tree.
Additional Arguments
<<Script(<"script">)
Creates a new script window. The optional quoted string script is placed inside the script window.
<<Journal
Creates an empty journal.
<<Size Window(x, y)
Creates a new window of the specified height and width.
<<Modal
Makes the new window a modal window, which prevents any other actions in JMP until the window is closed. If you do not include an OK or Cancel button, one is added automatically for you. Note: If used, this argument must be the second argument, directly after the window title. Available modal window arguments are:
– <<On Open(expr) runs expr when the window is created.
Note: In data tables, On Open (or OnOpen) scripts that execute other programs are never run. Set the Evaluate OnOpen Scripts preference to control when the script is run.
– <<On Close (expr) runs expr when the window is closed. Returns 0 if the window fails to close.
– <<On Validate (expr) runs expr when the OK button is pressed. If it returns True, the window is closed otherwise the window remains open.
– <<Return Result changes the window’s return value when it closes to match that of the deprecated Dialog() function.
Show Toolbars(0|1)
Show or hide the toolbar. The default value is 1. (Windows only.)
Show Menu(0|1)
Show or hide the menu bar. The default value is 1. (Windows only.)
Suppress AutoHide
Suppress or use the auto-hide feature for menus and toolbars. The default value is 1. (Windows only).
Notes
Dialog() was deprecated in JMP 10. Use New Window() with the Modal argument instead. See Convert Deprecated Dialog to New Window in the Scripting Guide for more information about using New Window().
Number Col Box("title", numbers)
Description
Creates a column named title with numeric entries given in list or matrix form.
Number Col Edit Box("title", numbers)
Description
Creates a column named title with numeric entries given in list or matrix form. The numbers can be edited.
Number Edit Box(initValue, <width>)
Description
Creates an editable number box that initially contains the initValue argument.
Returns
The display box object.
Argument
initValue
Any number to use as the initial value. If you use a date or time format, a date and time selector window is created.
<width>
Value to set the width of the box in characters.
Notes
See Number Edit Box in the Scripting Guide.
Outline Box("title", display box, ...)
Description
Creates a new outline named title containing the listed display boxes.
Notes
See Outline Box in the Scripting Guide.
Page Break Box()
Description
Creates a display box that forces a page break when the window is printed.
Panel Box("title", display box)
Description
Creates a display box labeled with the quoted string title that contains the listed display boxes.
Notes
See Panel Box in the Scripting Guide.
Picture Box(Open(picture), format)
Description
Creates a display box that contains a graphics picture object.
Returns
A reference to the display box.
Argument
Open
Opens the directory that contains the picture.
picture
The pathname for the picture to include.
format
The graphic file format. Specifying the format opens the picture in JMP. If you omit this argument, the picture opens in the default graphics program.
Example
New Window( "Example",
Picture Box( Open( "$SAMPLE_IMAGES/pi.gif", gif ) ) );
Platform(data table, script)
Description
Evaluates the specified script in the context of the specified data table.
Returns
The resulting display box for embedding in a display tree.
Example
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
win = New Window( "Platform example",
H List Box(
Platform(
dt,
Bubble Plot(
X( :weight ),
Y( :height ),
Sizes( :age ),
Title Position( 0, 0 )
)
),
Platform(
dt,
Bubble Plot(
X( :weight ),
Y( :age ),
Sizes( :height ),
Title Position( 0, 0 )
)
)
)
);
Plot Col Box("title", numbers)
Description
Returns a display box labeled with the quoted string title to graph the numbers. The numbers can be either a list or a matrix.
Poly Seg(x values, y values)
Description
Returns a display seg that represents a polygon with vertices based on the x and y values.
Example
x = [10, 50, 90];
y = [10, 90, 10];
win = New Window( "Poly Seg Example",
g = Graph Box( Poly Seg( x, y ) ) );
frame = g[FrameBox( 1 )];
seg = (frame << Find Seg( "Poly Seg" ));
Popup Box({"command1", script1, "command2", script2, ...})
Description
Creates a red triangle menu. The single argument is an expression yielding a list of an even number of items alternating between the command string and the expression that you want evaluated when the command is selected. If the command is an empty string, a separator line is inserted. Note: Pressing ALT and right-clicking the red triangle menu opens a window with check boxes for the commands. See Access Report Display Options in Using JMP.
Notes
See Popup Box in the Scripting Guide.
Radio Box({"item", ...}, <script>)
Description
Constructs a display box to show a set of radio buttons. The optional script is run every time a radio button is selected.
Notes
See Radio Box in the Scripting Guide.
Range Slider Box(minValue, maxValue, lowVariable, highVariable, script)
Description
Range Slider Box() returns a display box that shows a range slider control that ranges from minValue to maxValue. As the two sliders' positions change, their values are placed into lowVariable and highVariable, and the script is run.
Returns
The display box (RangeSliderBox).
Arguments
minValue, maxValue
Numbers that set the minimum and maximum value the slider represents.
lowVariable
The variable whose value is set and changed by the lower slider.
highVariable
The variable whose value is set and changed by the upper slider.
script
Any valid JSL commands that are run as the slider is moved.
Report(obj)
Description
Returns the display tree of a platform obj. This can also be sent as a message to a platform:
obj<<Report
Scene Box(x size, y size)
Description
Creates an x by y-sized scene box for 3-D graphics.
Scene Display List
Description
Returns a display list for 3-D graphics.
Example
ex = Scene Display List();
ex << Color( .9, .9, .9 );
ex << Text( center, middle, .3, "Hello World" );
exScene = Scene Box( 600, 600 );
exScene << Background Color( 0 );
exScene << Show Arcball( always );
New Window( "See HelloWorld.jsl in sample scripts", exScene );
exScene << Perspective( 45, .2, 20 );
exScene << Translate( 0.0, 0.0, -4.5 );
exScene << Arcball( ex, 1.5 );
exScene << Update;
Script Box(<"script">, <JSL|Text|SAS|SAS Output|SASLog|R|MATLAB|JavaScript|C|SQL|Python|JSON|XML>, <width>, <height>)
Description
Constructs an editable box that contains the quoted string script. The editable box is a script window and can both be edited and run as JSL.
Arguments
script
An optional quoted string that appears in the script box.
language
An optional argument that provides syntax highlighting for the specified language.
width
An optional integer that sets the width of the script box.
height
An optional integer that sets the height of the script box.
Example
// JSON
New Window( "JSON",
Script Box(
"{\!"a\!":1,\!"b\!":\!"test\!"}",
"JSON"
)
);
Scroll Box(<size(h,v)>, display box, ...)
Description
Creates a display box that positions a larger child box using scroll bars.
Returns
A reference to the scroll box object.
Arguments
size(h,v)
(Optional) The h and v arguments specify the size of the box in pixels.
flexible(Boolean)
(Optional) True (1) sets the box to be resizable with the window. False (0) sets the box to remain the same size when the window is resized.
display box
Any number of display box arguments can be contained in the scroll box.
Note
You can send a scroll box object a message to set the background color:
<<Set Background Color( {R, G, B} | <color> )
The flexible argument is deprecated. Use Set Auto Stretching instead. See V Scroll Box(<size(v)>, display box) for an example.
You can set the Boolean flags for horizontal (h) and vertical (v) scrolling to enable (1) or disable (0) the scroll bars. If scrolling is disabled in a given direction, the Scroll Box will behave as a regular container in that direction.
<<Set Scrollers (h, v)
To return the flags for scrolling, use the following message:
<<Get Scrollers
To set the horizontal (h) and vertical (v) positions (in pixels) for the scrollers on the scroll bar:
<<Set Scroll Position (h,v)
To return the flags for scroll position, use the following message:
<<Get Scroll Position
To return the maximum positions for horizontal and vertical scrolling, use the following message:
<<Get Scroll Extents
Example
The following example shows a window containing a scroll box with the specified settings.
win = New Window( "Example",
sb = Scroll Box(
Size( 150, 75 ),
List Box(
{"First Item", "Second Item",
"Third Item", "Fourth Item",
"Fifth Item"},
width( 200 ),
max selected( 2 ),
nlines( 6 )
)
)
);
win << Set Window Size( 300, 200 );
sb << Set Scrollers( 1, 1 ); // enable both scroll bars
sb << Set Scroll Position( 0, 20 ); /* position the scrollers on
the scroll bar */
Shape Seg( {Path(<path>), ...}, <Row States(dt|dt,[rows]|dt,{{rows}, ...}|{states})>)
Description
Returns a display seg with a collection of shapes.
Arguments
Path
Specifies the path with an Nx3 matrix or with a text representation. A path matrix has three columns for x, y, and flags for each point in the path. The flag values are 0 for control, 1 for move, 2 for a line segment, 3 for a cubic Bézier segment, and are negative if the point also closes the path. Path text supports SVG syntax.
states
Specifies row states that are listed in the Help > Scripting Index Row State category.
Example
win = New Window( "Shape Seg Example",
Graph Box(
Shape Seg(
{Path( [10 10 1, 10 70 0, 70 70 0, 70 10 -3] ),
Path( "M20,20 C20,60 60,60 60,20 Z" )},
Row States( {Selected State( 1 ), Color State( "red" )} )
)
)
);
Sheet Box(<<Hold(rpt), display box, ...)
Description
Returns a display box that can organize other display boxes vertically or horizontally.
Notes
See H Sheet Box and V Sheet Box in the Scripting Guide.
Sheet Panel Box( title, child display box)
Description
Specifies whether the Sheet Box should be horizontal or vertical.
Slider Box(minValue, maxValue, variable, script, <set width(n)>, <rescale slider(min, max)>)
Description
Creates an interactive slider control.
Returns
The display box (SliderBox).
Arguments
minValue, maxValue
Numbers that set the minimum and maximum value the slider represents.
variable
the variable whose value is set and changed by the slider box.
script
Any valid JSL commands that is run as the slider box is moved.
set width(n)
specify the width of the slider box in pixels.
rescale slider(l, u)
resets the max and min values for the slider box.
Notes
You can send Set Width and Rescale Slider as commands to a slider object. For example:
ex = .6;
New Window( "Example", mybox = Slider Box( 0, 1, ex, Show( ex ) ) );
mybox << Set Width( 200 ) << Rescale Slider( 0, 5 );
See Slider Box in the Scripting Guide.
Spacer Box(<size(h,v)>, <color(color)>)
Description
Creates a display box that can be used to maintain space between other display boxes, or to fill a cell in a LineUp Box.
Returns
A reference to the display box.
Arguments
size(h,v)
(Optional) The h and v arguments specify the size of the box in pixels.
color(color)
(Optional) Sets the color of the box to the JSL color argument.
Notes
See Spacer Box in the Scripting Guide.
Spin Box(script)
Description
Returns a display box that shows a button with up and down controls.
Argument
script
Invoked with an argument that indicates the direction of the arrow clicked. Negative is down, and positive is up. A magnitude of 1 indicates a single click, while larger values may be used to indicate a repeating action.
Example
win = New Window( "Example",
Lineup Box(
2,
nb = Number Edit Box( 3 ),
sb = Spin Box( Function( {value}, nb << Increment( value ) ) )
)
);
nb << Set Increment( 1 );
Splitter Box(<size(x, y)>, display box, ...)
Description
Returns a display box that can organize other display boxes horizontally or vertically with interactive control of sizes. Child sizes are specified as a proportion of the width or height of the splitter box. The optional size argument is used only for the top-most splitter box. Lower level display boxes are sized like any other child box.
Use H Splitter Box() or V Splitter Box().
Notes
See H Splitter Box and V Splitter Box in the Scripting Guide.
String Col Box("title", {"string", ...})
Description
Creates column in the table containing the string items listed.
String Col Edit Box("title", {"string", ...})
Description
Creates column in the table containing the string items listed. The string boxes are editable.
Note
To retrieve the data, use this message:
data = obj << Get;
See String Col Edit Box in the Scripting Guide.
Tab Box(Tab Page Box(Title("page title 1"), <options>, contents of page 1), Tab Page Box(Title("page title 2"), <options>, contents of page 2), ...);
Description
(Previously called Tab List Box.) Creates a tabbed window pane. The arguments are an even number of items alternating between the name of a tab page and the contents of the tab page.
Note
Certain messages you can send to Tab Page Box have been renamed, as follows:
– Set Title to Title
– Set Tip to Tip
– Set Icon to Icon
– Set Closeable to Closeable
Example
New Window( "Example",
Tab Box(
t1 = Tab Page Box( Title( "alpha" ), Panel Box( "panel", Text Box( "text" ) ) ),
t2 = Tab Page Box( Title( "beta" ), Popup Box( {"x", ex = 1, "y", ex = 2} ) ),
)
);
Notes
See Tab Box and Tab Page Box in the Scripting Guide.
Tab List Box(title, tabExpr1, ...)
Description
Returns a display box containing tabs that contain other display boxes.
Optional Arguments
Tip("string")
Specifies a tooltip.
Closeable(Boolean)
Specifies whether the page can be closed.
Icon("string")
Specifies the icon.
Tab Page Box([options,] contents)
Description
Returns a display box that can be used in a tab box or as a stand-alone container with a title.
Optional Arguments
Tip("string")
Specifies a tooltip.
Closeable(Boolean)
Specifies whether the page can be closed.
Icon("string")
Specifies the icon.
Notes
See Tab Box and Tab Page Box in the Scripting Guide.
Table Box(display box, ...)
Description
Creates a report table with the display boxes listed as columns.
Text Box("text", <arguments>)
Description
Constructs a box that contains the quoted string text.
Arguments
<<Justify Text("position")
Justifies the text left, center, or right as specified in quotes.
<<Set Wrap(pixels)
Sets the point at which text wraps.
Notes
See Text Box in the Scripting Guide.
Text Edit Box("text", <arguments>)
Description
Constructs an editable box that contains the quoted string text.
Arguments
<<Password Style(boolean)
Displays asterisks in the box rather than the password.
<<Set Script
Runs the specified script after the text is edited.
<<Set Width(pixesl)
Sets the point at which text wraps.
Notes
See Text Edit Box in the Scripting Guide.
This Project()
Description
Gets the current project when a JSL script is run from that project.
Example
The following example gets the window title of the current project.
project = New Project();
project << Save( "$DOCUMENTS/Test Project.jmpprj" );
project << Run Script(
New Window( "Project Title",
Text Box(This Project() << Get Window Title())
);
);
Tree Box(<{rootnodes}>, <size(width, height)>, <MultiSelect>)
Description
Constructs a box to show a hierarchical tree composed of Tree Nodes.
Arguments
{rootnodes}
Specifies the names for the root nodes created by Tree Node() which the box contains.
size(width, height)
Specifies the width and height (in pixels) of the box.
MultiSelect
Indicates that more than one item in the tree can be selected.
Tree Node(<data>)
Description
Creates a node for display in a Tree Box display. Tree Node is used for both parent and child nodes.
Note
If you send a root node that contains one or more nodes with the Set Node Select Script defining a collapse message, then macOS runs the script twice. Windows doesn’t run the script. This behavior on macOS doesn’t just affect increments. Any script runs twice. It will print to the log twice, create a column twice, try to delete something twice, and so on.
Triangulation(<dt>, X(col1, col1), <Y(Col)>)
Description
Returns an object containing the Delaunay triangulation of the given point set. The optional Y will be averaged for duplicate points, and all points in the output will be unique.
Examples
tri = Triangulation(
X( [0 0 1 1], [0 1 0 1] ),
Y( [0 1 2 3] )
);
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
tri = Triangulation( X( :X, :Y ), Y( :POP ) );
V Center Box
Returns a display box that contains the child display box argument. The box is centered in the vertical space defined by the maximum size of that child display box and all of the other siblings of the center box.
V List Box(<Align("center"|"right")> display box, ...)
Description
Creates a display box that contains other display boxes and displays them vertically.
Arguments
Align
Specify right or center alignment of the contents in the list box. The contents are center aligned by default.
display box
Any number of display box arguments can be contained in the list box.
Notes
See H List Box and V List Box in the Scripting Guide.
V Scroll Box(<size(v)>, display box)
Description
Returns a display box that places a scroll bar on the bottom and right if the contents are bigger than the size of the scroll box.
Arguments
size(v)
The vertical length of the scroll bar.
Example
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Window( "stretchable",
H Splitter Box(
Size( 400, 200 ),
Scroll Box(
Size( 200, 200 ),
dt <<Run Script( "Distribution" ),
<<Set Auto Stretching( 1, 1 )
),
Scroll Box(
Size( 200, 200 ),
dt <<Run Script( "Bivariate" ),
<<Set Auto Stretching( 1, 1 )
),
<<Set Auto Stretching( 1, 1 )
)
);
Notes
The flexible argument is deprecated. Use Set Auto Stretching instead.
V Sheet Box(<<Hold(report), display boxes)
Description
Returns a display box that arranges the display boxes provided by the arguments in a vertical layout. The <<Hold() message tells the sheet to own the report(s) that is excerpted.
Notes
See H Sheet Box and V Sheet Box in the Scripting Guide.
V Splitter Box(<size(h,v)>, display box, <arguments>)
Description
Returns a display box that arranges the display boxes provided by the arguments in a vertical layout (or panel). The splitter enables the user to interactively resize the panel.
Arguments
display box
Any number of display box arguments can be contained in the splitter box.
Notes
For more information about the optional arguments, see H Splitter Box(<size(h,v)>, display box, <arguments>). Also see H Splitter Box and V Splitter Box in the Scripting Guide.
Web Browser Box("url")
Description
Creates a display box that contains a web page. Available only on Windows in Internet Explorer.
Returns
A reference to the web browser box object.
Argument
url
A quoted string containing the URL to the web page to display.
Example
The following example creates a splitter box with the web browser box on the left and the bubble plot on the right.
dt = Open( "$SAMPLE_DATA/PopAgeGroup.jmp" );
New Window( "Example",
H Splitter Box(
Size( 800, 300 ),
wb = Web Browser Box( "http://www.jmp.com" ),
dt << Run Script( "Bubble Plot Region" )
)
);
wb << Set Auto Stretching( 1, 1 ); // auto stretch horizontally and vertically
wb << Set Max Size( 10000, 10000 ); // maximum size in pixels
Notes
The <a href> target “_blank” opens the web page in a new Internet Explorer window. The <a href> target “_new” opens the web page in the active Internet Explorer tab.
Window(<"string"|int>)
Returns
Either a list of references to all open windows, or a reference to an explicitly named window.
Arguments
string
A quoted string containing the name of a specific open window.
int
the number of a specific open window.
Notes
If no argument is provided, a list of all open windows is returned.
If the argument (either a window name or number) does not exist, an empty list is returned.
Wrap List Box(display box, ...)
Description
Creates a list box that contains other display boxes and displays them horizontally, but wraps them when printing.
Arguments
display box
Any number of display box arguments can be contained in the list box.