generates a 3D scatter plot of points with coordinates {xi,yi,zi}.


generates a 3D scatter plot of points with a 2D array of height values.


plots several collections of points, by default in different colors.

Details and Options

  • Data values xi, yi and zi can be given in the following forms:
  • xia real-valued number
    Quantity[xi,unit]a quantity with a unit
  • Values xi, yi and zi that are not of the preceding form are taken to be missing and are not shown.
  • The datai have the following forms and interpretations:
  • <|"k1"{x1,y1,z1},"k2"{x2,y2,z2},|>values {{x1,y1,z1},{x2,y2,z2},}
    {{x1,y1,z1}"lbl1",{x2,y2,z2}"lbl2",}, data{"lbl1","lbl2",}values {{x1,y1,z1},{x2,y2,z2},} with labels {lbl1,lbl2,}
    SparseArrayvalues as a normal array
    WeightedDataunweighted values
  • The following wrappers w can be used for the datai:
  • Annotation[datai,label]provide an annotation for the data
    Button[datai,action]define an action to execute when the data is clicked
    Callout[datai,label]label the data with a callout
    Callout[datai,label,pos]place the callout at relative position pos
    EventHandler[datai,]define a general event handler for the data
    Hyperlink[datai,uri]make the data a hyperlink
    Labeled[datai,label]label the data
    Labeled[datai,label,pos]place the label at relative position pos
    Legended[datai,label]identify the data in a legend
    PopupWindow[datai,cont]attach a popup window to the data
    StatusArea[datai,label]display in the status area on mouseover
    Style[datai,styles]show the data using the specified styles
    Tooltip[datai,label]attach a tooltip to the data
    Tooltip[datai]use data values as tooltips
  • Wrappers w can be applied at multiple levels:
  • {{,w[zi,j],}}wrap the value zi,j in array data
    {,w[{xi,yi,zi}],}wrap the point {xi,yi,zi}
    w[datai]wrap the data
    w[{data1,}]wrap a collection of datai
    w1[w2[]]use nested wrappers
  • Callout, Labeled and Placed can use the following positions pos:
  • Automaticautomatically placed labels
    Above, Below, Before, Afterpositions around the data
    {pos,epos}epos in label placed at relative position pos of the data
  • Labels are placed on a billboard plane that always faces the camera, and Before, After, etc. refer to positions on that plane.
  • ListPointPlot3D has the same options as Graphics3D, with the following additions and changes:
  • AxesTruewhether to draw axes
    BoxRatios{1,1,0.4}bounding 3D box ratios
    ColorFunctionAutomatichow to determine the color of points
    ColorFunctionScalingTruewhether to scale arguments to ColorFunction
    DataRangeAutomaticthe range of x and y values to assume for data
    FillingNonehow to fill in stems for each point
    FillingStyleAutomaticstyle to use for filling
    LabelingFunctionAutomatichow to label points
    LabelingSizeAutomaticsize to use for callout and label
    PlotLegendsNonelegends for points
    PlotRange{Full,Full,Automatic}the range of z or other values to include
    PlotRangePaddingAutomatichow much to pad the range of values
    PlotStyleAutomaticstyles of points
    PlotTheme$PlotThemeoverall theme for the plot
    RegionFunction(True&)how to determine whether a point should be included
    ScalingFunctionsNonehow to scale individual coordinates
  • The option setting Filling->Automatic shows stems for all points.
  • DataRange determines how values {{z11, , z1n},,{zm1,,zmn}} {z1q,,zn} are interpreted into {{x11,y11,z11},,{xmn,ymn,zmn}}. Possible settings include:
  • Automatic,Alluniform from 1 to m or n
    {{xmin,xmax},{ymin,ymax}}uniform from xmin to xmax and from ymin to ymax
  • In general, a list of triples {{x1,y1,z1},{x2,y2,z2},} is interpreted as a list of points, but the setting DataRangeAll forces it to be interpreted as multiple datai {{z11,z12,z13},{z21,z22,z23},}.
  • PlotStyle allows any graphics directive, and each directive will be applied to collections of points datai.
  • The arguments supplied to functions in ColorFunction and RegionFunction are x, y and z. Functions in ColorFunction are by default supplied with scaled versions of these arguments.


open all close all

Basic Examples  (6)

Show a scatter plot from an array of height values:

Click for copyable input

Use irregularly spaced data:

Click for copyable input
Click for copyable input

Add labels as Callout:

Click for copyable input

Fill below the points:

Click for copyable input

Show multiple sets of points:

Click for copyable input

Color the points by height:

Click for copyable input

Scope  (28)

Options  (41)

Applications  (1)

Neat Examples  (2)

Introduced in 2007
Updated in 2018