is an option for Graphics, Grid, and other constructs that specifies whether to include a frame.


  • The following basic settings can be given:
  • Truedraw a frame around the whole object
    False or Nonedraw no frame
    Alldraw frames around each entry in Grid, etc.
  • For Graphics, Plot, and related functions, Frame->{{left,right},{bottom,top}} specifies whether to draw a frame on each edge. With the default setting FrameTicks->Automatic, ticks are included whenever a frame is drawn.
  • For Grid and related constructs, lists of settings can be given. Common cases include:
  • {All,False}put frames at all horizontal positions (column lines)
    {False,All}put frames at all vertical positions (row lines)
    {-1->True}a frame around the last column
    {False,-1->True}a frame around the last row
  • General settings for Frame in Grid and related constructs can be given as:
  • specapply spec to all items
    {specx}apply specx at successive horizontal positions
    {specx,specy}apply speck at successive horizontal and vertical positions
    {specx,specy,rules}also allow explicit rules for individual i,j elements
  • The speck can have the following forms:
  • {s1,s2,,sn}use s1 through sn; then use defaults
    {{c}}use c in all cases
    {{c1,c2}}alternate between c1 and c2
    {{c1,c2,}}cycle through all ci
    {s,{c}}use s, then repeatedly use c
    {s1,{c},sn}use s1, then repeatedly use c, but use sn at the end
    {s1,s2,,{c1,c2,},sm,,sn}use the first sequence of si at the beginning, then cyclically use the ci, then use the last sequence of si at the end
    {s1,s2,,{},sm,,sn}use the first sequence of si at the beginning and the last sequence at the end
    {i1->v1,i2->v2,}specify what to use at positions ik
    {spec,rules}use rules to override specifications in spec
  • With settings of the form {s1,s2,,{},sm,,sn}, if there are more si specified than items across the grid, si from the beginning are used for the first items, and ones from the end are used for the last items.
  • Rules of the form {{imin,imax},{jmin,jmax}}->v can be used to specify frames for regions of a grid.


open allclose all

Basic Examples  (4)

Draw a frame around a plot:

Put a frame on the left and right edges:

Put a frame around a grid:

Frame all elements in the grid:

Specify overall frame style, including frame ticks and frame tick labels, using FrameStyle:

Scope  (9)

Frame Positions  (2)

Put a frame on the top and the bottom edges:

Put a frame on all the columns:

Put a frame on all the rows:

Frame Styling  (2)

Specify the style of each frame edge:

Specify the frame style of a grid:

Frame Labels and Ticks  (5)

Place labels on the bottom and left frame edges:

Specify labels for each edge:

Put a frame, but no ticks:

Place frame tick marks and labels automatically:

Place frame tick marks at the specified positions:

Generalizations & Extensions  (10)

Grid Frame Positions  (6)

Put no frame on the first column, a frame on the second, then repeat the default (which is no frame):

Put no frame on the first column, then put a frame on the second and all subsequent columns:

Put no frame on the first row, a frame on the second, then repeat the default (which is no frame):

Frame a specific row and column:

Frame the last column and the last row:

Frame a set of items:

Frame a region of the grid:

Put a frame around an individual element in the grid:

Grid Frame Styling  (4)

Frame rows and columns with specific styles:

Frame a region of the grid with specific styles:

Put a styled frame around an individual element:

Individually styled frames can be used with FrameStyle, and have higher priority:

Applications  (1)

Frame diagonal elements:

Properties & Relations  (3)

Dividers can be used to individually specify the dividers between rows and columns:

In 2D, frames are drawn above the graphics:

Objects in Epilog are drawn on top of any graphics, including frames:

GridLines puts grids across the image:

Neat Examples  (1)

Frame the upper-left subgrids:

Introduced in 1991
Updated in 2007