DiscretePlot3D [f,{i,imin,imax},{j,jmin,jmax}]
generates a plot of f when i runs from imin to imax and j runs from jmin to jmax.
DiscretePlot3D [f,{i,imin,imax,di},{j,jmin,jmax,dj}]
uses steps di and dj.
DiscretePlot3D [f,{i,{i1,…,im}},{j,{j1,…,jn}}]
uses successive i values i1, …, jm and j values j1, …, jn.
DiscretePlot3D [{f1,f2,…},…,…]
plots the values of all the fk.
DiscretePlot3D
DiscretePlot3D [f,{i,imin,imax},{j,jmin,jmax}]
generates a plot of f when i runs from imin to imax and j runs from jmin to jmax.
DiscretePlot3D [f,{i,imin,imax,di},{j,jmin,jmax,dj}]
uses steps di and dj.
DiscretePlot3D [f,{i,{i1,…,im}},{j,{j1,…,jn}}]
uses successive i values i1, …, jm and j values j1, …, jn.
DiscretePlot3D [{f1,f2,…},…,…]
plots the values of all the fk.
Details and Options
- DiscretePlot3D is typically used to visualize bivariate sequences.
- DiscretePlot3D plots the variable i along the axis and j along the axis.
- DiscretePlot3D uses the standard Wolfram Language iterator specification.
- DiscretePlot3D treats the variables i and j as local, effectively using Block .
- DiscretePlot3D has attribute HoldAll , and evaluates f only after assigning specific numerical values to i and j.
- In some cases, it may be more efficient to use Evaluate to evaluate f symbolically before specific numerical values are assigned to i and j.
- The precision used in evaluating f is the minimum precision used in the iterators.
- The form w[f] provides a wrapper w to be applied to the resulting graphics primitives.
- The following wrappers can be used:
-
- Callout and Labeled can use the following positions pos:
-
Automatic automatically placed labelsx near the data at a position x{pos,epos} epos in label placed at relative position pos of the data
- Labels that depend on {i,j} will be applied for each plot element, while labels that are independent of {i,j} will only occur once.
- DiscretePlot3D has the same options as Graphics3D , with the following additions and changes: [List of all options]
-
- The arguments supplied to ColorFunction are , , .
- With the setting ExtentSize->{{sxl,sxr},{syl,syr}} a horizontal plane is drawn around each plot point extending sxl to the left and sxr to the right along the axis and syl to the left and syr to the right along the axis. With ExtentMarkers->{{mxl,mxr},{myl,myr}}, the markers mxl and mxr will be used as left and right markers along the axis and myl and myr as left and right markers along the axis.
- The arguments supplied to ExtentElementFunction are the element region {{xmin,xmax},{ymin,ymax},{zmin,zmax}} and the sample point {xi,yi,zi}.
- With the setting ExtentSize->None , xmin is equal to xmax and ymin is equal to ymax. With the setting Filling->None , zmin is equal to zmax.
- Possible settings for PlotMarkers include:
-
None omit markers when drawing surfaces"Point" use 2D points as markers"Sphere" use 3D spheres as markers{"Point",s},{"Sphere",s} specify the size s of the markers{spec1,spec2,…} use specification speci for expression expri
- The marker size s can be a symbolic value such as Tiny , Small , Medium and Large or a scaled fraction of the width of the graphic.
- Possible settings for ScalingFunctions include:
-
sz scale the z axis{sx,sy} scale x and y axes{sx,sy,sz} scale x, y and z axes
- Each scaling function si is either a string "scale" or {g,g-1}, where g-1 is the inverse of g.
-
ImageMargins 0. the margins to leave around the graphicPreserveImageOptions Automatic whether to preserve image options when displaying new versions of the same graphicRotationAction "Fit" how to render after interactive rotation
List of all options
Examples
open all close allBasic Examples (3)
Plot a bivariate sequence:
Associate a region with the points:
Plot several sequences:
Scope (12)
Data and Layouts (4)
Plot multiple datasets:
Use wrappers on individual data, datasets, or collections of datasets:
Wrappers can be nested:
Override the default tooltips:
Use PopupWindow to provide additional drilldown information:
Button can be used to trigger any action:
Use ScalingFunctions to scale the axes:
Labeling and Legending (3)
Styling and Appearance (5)
Use ExtentSize to associate a region with a point:
Use an explicit list of styles for the plots:
Use any gradient color schemes from ColorData :
Style can be used to override styles:
Show plot markers:
Show extent region boundaries:
Use a theme with dark background in a high-contrast color scheme:
Options (90)
Axes (3)
By default, Axes are drawn for DiscretePlot3D :
Use Axes False to turn off axes:
Turn each axis on individually:
AxesLabel (4)
No axes labels are drawn by default:
Place a label on the axis:
Specify axes labels:
Use labels based on variables specified in DiscretePlot3D :
AxesOrigin (2)
The position of the axes is determined automatically:
Specify an explicit origin for the axes:
AxesStyle (4)
Change the style for the axes:
Specify the style of each axis:
Use different styles for the ticks and the axes:
Use different styles for the labels and the axes:
ColorFunction (6)
Color the points by scaled , , or value:
Color the surface by scaled , , or value:
Color the regions by scaled , , or value:
Use a named color gradient:
ColorFunction has higher priority than PlotStyle :
Use black when two numbers are relatively prime:
ColorFunctionScaling (1)
Color by absolute height:
EvaluationMonitor (1)
Gather the plotted heights:
Show the plot and a histogram of the heights:
ExtentElementFunction (5)
Get a list of built-in settings for ExtentElementFunction :
For detailed settings, use Palettes ▶ Chart Element Schemes:
This ChartElementFunction is appropriate to show the global scale:
Write a custom ExtentElementFunction :
A built-in element function may have options; use Palettes ▶ Chart Element Schemes to set them:
ExtentMarkers (4)
Do not show the extent edges:
Use lines to show the extent edges:
Use varying sized tubes to show the extent edges:
Place tubes along the front and left edges of the extent region:
ExtentSize (6)
Show heights as points:
Draw full regions around the heights:
With unevenly spaced points:
Use fixed-size regions:
With unevenly spaced points:
Use sizes relative to the distance between points:
With unevenly spaced points:
Use equally sized regions that do not overlap:
With unevenly spaced points:
Control the placement of the region around the points:
Filling (3)
FillingStyle (3)
Fill to the bottom with a variety of styles:
With expanded point regions:
Use different colors above and below the filling level:
Only fill below the filling level:
ImageSize (7)
Use named sizes such as Tiny , Small , Medium and Large :
Specify the width of the plot:
Specify the height of the plot:
Allow the width and height to be up to a certain size:
Specify the width and height for a graphic, padding with space if necessary:
Setting AspectRatio Full will fill the available space:
Use maximum sizes for the width and height:
Use ImageSize Full to fill the available space in an object:
Specify the image size as a fraction of the available space:
Joined (2)
Join the points into a surface:
Combine a surface with extent regions:
LabelingFunction (4)
Put the labels above the points:
Put them in a tooltip:
Use callouts to label the points:
Label the points with their values:
Label the points with their indices:
LabelingSize (1)
Specify a maximum size for textual labels:
Use the full label:
PlotLegends (6)
Use automatic legends:
Specify a list of labels for legends:
Use named legends:
PlotLegends automatically picks up PlotStyle values:
Use Placed to control legend placement:
Use SwatchLegend to change legend appearance:
PlotMarkers (4)
Change the size of the default plot markers:
Markers are not usually shown when surfaces are used:
Use points with surfaces:
Use spheres for markers:
Vary the size of the spheres:
PlotStyle (7)
Use different style directives:
By default, different styles are chosen for multiple functions:
Explicitly specify the style for different functions:
PlotStyle applies to points, lines, and surfaces:
PlotStyle can be combined with ColorFunction :
PlotStyle can be combined with FillingStyle :
FillingStyle by default uses the same style as PlotStyle with transparency:
PlotTheme (4)
Use a theme with simple ticks and grid lines:
Change the color scheme:
Use a theme with dark background in a high-contrast color scheme:
Turn off the ticks:
RegionFunction (4)
Restrict the region plotted:
Extended regions are treated as the underlying point without additional clipping:
Regions can have several unconnected components:
Define regions using logical combinations of constraints:
ScalingFunctions (9)
By default, plots have linear scales in each direction:
Use a log scale in the direction:
Use a linear scale in the direction that shows smaller numbers at the front:
Use a reciprocal scale in the direction:
Use different scales in the and directions:
Reverse the axis without changing the axis:
Use a scale defined by a function and its inverse:
Positions in Ticks and FaceGrids are automatically scaled:
PlotRange is automatically scaled:
Applications (2)
Visualize properties of discrete distributions, such as probability density function:
Cumulative distribution function:
Survival function:
Approximate the volume under a surface using Riemann sums:
Properties & Relations (4)
Plot3D generates continuous surfaces:
Use ListPointPlot3D to plot lists of values:
Use BarChart3D to show bars for lists of values:
Use DiscretePlot to plot functions of single discrete variables:
Related Guides
History
Introduced in 2010 (8.0) | Updated in 2012 (9.0) ▪ 2014 (10.0) ▪ 2019 (12.0)
Text
Wolfram Research (2010), DiscretePlot3D, Wolfram Language function, https://reference.wolfram.com/language/ref/DiscretePlot3D.html (updated 2019).
CMS
Wolfram Language. 2010. "DiscretePlot3D." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2019. https://reference.wolfram.com/language/ref/DiscretePlot3D.html.
APA
Wolfram Language. (2010). DiscretePlot3D. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/DiscretePlot3D.html
BibTeX
@misc{reference.wolfram_2025_discreteplot3d, author="Wolfram Research", title="{DiscretePlot3D}", year="2019", howpublished="\url{https://reference.wolfram.com/language/ref/DiscretePlot3D.html}", note=[Accessed: 05-December-2025]}
BibLaTeX
@online{reference.wolfram_2025_discreteplot3d, organization={Wolfram Research}, title={DiscretePlot3D}, year={2019}, url={https://reference.wolfram.com/language/ref/DiscretePlot3D.html}, note=[Accessed: 05-December-2025]}