VectorPlot3D
✖
VectorPlot3D
generates a 3D vector plot of the vector field {vx,vy,vz} as a function of x, y, and z.
plots several vector fields.
Details and Options




- VectorPlot3D is also known as field plot, quiver plot and direction plot.
- VectorPlot3D displays a vector field by drawing arrows normalized to a fixed length. The arrows are colored by default according to the magnitude
of the vector field.
- The plot visualizes the set
.
- VectorPlot3D by default shows vectors from the vector field at a specified grid of 3D positions.
- VectorPlot3D omits any arrows for which the vi etc. do not evaluate to real numbers.
- The region reg can be any RegionQ object in 3D.
- VectorPlot3D treats the variables x, y and z as local, effectively using Block.
- VectorPlot3D has attribute HoldAll and evaluates the vi etc. only after assigning specific numerical values to x, y and z. In some cases, it may be more efficient to use Evaluate to evaluate the vi etc. symbolically first.
- VectorPlot3D has the same options as Graphics3D, with the following additions and changes: [List of all options]
-
BoxRatios {1,1,1} ratio of height to width ClippingStyle Automatic how to display arrows outside the vector range EvaluationMonitor None expression to evaluate at every function evaluation Method Automatic methods to use for the plot PerformanceGoal $PerformanceGoal aspects of performance to try to optimize PlotLegends None legends to include PlotRange {Full,Full,Full} range of x, y, z values to include PlotRangePadding Automatic how much to pad the range of values PlotTheme $PlotTheme overall theme for the plot RegionBoundaryStyle Automatic how to style plot region boundaries RegionFunction (True&) determine what region to include ScalingFunctions None how to scale individual coordinates VectorAspectRatio Automatic width to length ratio for arrows VectorColorFunction Automatic how to color vectors VectorColorFunctionScaling True whether to scale the argument to VectorColorFunction VectorMarkers Automatic shape to use for arrows VectorPoints Automatic the number or placement of arrows VectorRange Automatic range of vector lengths to show VectorScaling None how to scale the sizes of arrows VectorSizes Automatic sizes of displayed arrows VectorStyle Automatic how to draw arrows WorkingPrecision MachinePrecision precision to use in internal computations - The individual arrows are scaled to fit inside bounding balls around each point.
- VectorScaling scales the magnitudes of the vectors into the range of arrow sizes smin to smax given by VectorSizes.
- VectorScaling->Automatic will scale the arrow lengths depending on the vector magnitudes:
- Common markers include:
-
"Arrow3D" 3D arrow-shaped marker "Arrow" 2D arrow-shaped marker "Tube" tube segment aligned in the field direction "Segment" line segment aligned in the field direction - VectorColorFunction->None will draw the arrows with the style specified by VectorStyle.
- The arguments supplied to functions in RegionFunction and VectorColorFunction are x, y, z, vx, vy, vz, Norm[{vx,vy,vz}].
- Possible settings for ScalingFunctions include:
-
{sx,sy,sz} scale x, y and z axes - Common built-in scaling functions s include:
-
"Log" log scale with automatic tick labeling "Log10" base-10 log scale with powers of 10 for ticks "SignedLog" log-like scale that includes 0 and negative numbers "Reverse" reverse the coordinate direction "Infinite" infinite scale -
AlignmentPoint Center the default point in the graphic to align with AspectRatio Automatic ratio of height to width Axes False whether to draw axes AxesEdge Automatic on which edges to put axes AxesLabel None axes labels AxesOrigin Automatic where axes should cross AxesStyle {} graphics directives to specify the style for axes Background None background color for the plot BaselinePosition Automatic how to align with a surrounding text baseline BaseStyle {} base style specifications for the graphic Boxed True whether to draw the bounding box BoxRatios {1,1,1} ratio of height to width BoxStyle {} style specifications for the box ClippingStyle Automatic how to display arrows outside the vector range ClipPlanes None clipping planes ClipPlanesStyle Automatic style specifications for clipping planes ContentSelectable Automatic whether to allow contents to be selected ControllerLinking False when to link to external rotation controllers ControllerPath Automatic what external controllers to try to use Epilog {} 2D graphics primitives to be rendered after the main plot EvaluationMonitor None expression to evaluate at every function evaluation FaceGrids None grid lines to draw on the bounding box FaceGridsStyle {} style specifications for face grids FormatType TraditionalForm default format type for text ImageMargins 0. the margins to leave around the graphic ImagePadding All what extra padding to allow for labels, etc. ImageSize Automatic absolute size at which to render the graphic LabelStyle {} style specifications for labels Lighting Automatic simulated light sources to use Method Automatic methods to use for the plot PerformanceGoal $PerformanceGoal aspects of performance to try to optimize PlotLabel None a label for the plot PlotLegends None legends to include PlotRange {Full,Full,Full} range of x, y, z values to include PlotRangePadding Automatic how much to pad the range of values PlotRegion Automatic final display region to be filled PlotTheme $PlotTheme overall theme for the plot PreserveImageOptions Automatic whether to preserve image options when displaying new versions of the same graphic Prolog {} 2D graphics primitives to be rendered before the main plot RegionBoundaryStyle Automatic how to style plot region boundaries RegionFunction (True&) determine what region to include RotationAction "Fit" how to render after interactive rotation ScalingFunctions None how to scale individual coordinates SphericalRegion Automatic whether to make the circumscribing sphere fit in the final display area Ticks Automatic specification for ticks TicksStyle {} style specification for ticks TouchscreenAutoZoom False whether to zoom to fullscreen when activated on a touchscreen VectorAspectRatio Automatic width to length ratio for arrows VectorColorFunction Automatic how to color vectors VectorColorFunctionScaling True whether to scale the argument to VectorColorFunction VectorMarkers Automatic shape to use for arrows VectorPoints Automatic the number or placement of arrows VectorRange Automatic range of vector lengths to show VectorScaling None how to scale the sizes of arrows VectorSizes Automatic sizes of displayed arrows VectorStyle Automatic how to draw arrows ViewAngle Automatic angle of the field of view ViewCenter Automatic point to display at the center ViewMatrix Automatic explicit transformation matrix ViewPoint {1.3,-2.4,2.} viewing position ViewProjection Automatic projection method for rendering objects distant from the viewer ViewRange All range of viewing distances to include ViewVector Automatic position and direction of a simulated camera ViewVertical {0,0,1} direction to make vertical WorkingPrecision MachinePrecision precision to use in internal computations



List of all options




Examples
open allclose allBasic Examples (4)Summary of the most common use cases

https://wolfram.com/xid/0b8ens9p0o-e8vvkn

Include a legend for the vector magnitudes:

https://wolfram.com/xid/0b8ens9p0o-sgxlon

Use tube segments as markers to represent the vectors:

https://wolfram.com/xid/0b8ens9p0o-62np7l

Plot a vector field inside the unit ball:

https://wolfram.com/xid/0b8ens9p0o-x3jzdi

Scope (14)Survey of the scope of standard use cases
Sampling (5)
Use Evaluate to evaluate the vector field symbolically before numeric assignment:

https://wolfram.com/xid/0b8ens9p0o-wsetn

Plot vectors over specified regions:

https://wolfram.com/xid/0b8ens9p0o-2z4i7

Plot a vector field with vectors placed with specified densities:

https://wolfram.com/xid/0b8ens9p0o-e44lkt

Plot a field with arrows placed at random locations:

https://wolfram.com/xid/0b8ens9p0o-bliq74

https://wolfram.com/xid/0b8ens9p0o-illqfm

Plot multiple vector fields with different colors for each field:

https://wolfram.com/xid/0b8ens9p0o-jsekl8

Presentation (9)
Plot a vector field with arrows scaled according to their magnitudes:

https://wolfram.com/xid/0b8ens9p0o-cvj26o

Use a single color for the arrows:

https://wolfram.com/xid/0b8ens9p0o-oyavbn


https://wolfram.com/xid/0b8ens9p0o-nrzzgh

Color and scale the vectors based on the norm of the field:

https://wolfram.com/xid/0b8ens9p0o-d540zk

https://wolfram.com/xid/0b8ens9p0o-b9b4ip

Plot a vector field with arrows of specified size:

https://wolfram.com/xid/0b8ens9p0o-eejww2

Vary the arrow length and arrowhead size:

https://wolfram.com/xid/0b8ens9p0o-eirmoa


https://wolfram.com/xid/0b8ens9p0o-znxf0

https://wolfram.com/xid/0b8ens9p0o-osm2fc


https://wolfram.com/xid/0b8ens9p0o-j0oo7n

Use a log scale for the x axis:

https://wolfram.com/xid/0b8ens9p0o-nvp776

Reverse the y scale so it increases toward the bottom:

https://wolfram.com/xid/0b8ens9p0o-nq43yb

Options (65)Common values & functionality for each option
BoxRatios (2)
EvaluationMonitor (2)
PerformanceGoal (2)
PlotLegends (5)
No legends are included by default:

https://wolfram.com/xid/0b8ens9p0o-hsg59b

Add a legend that indicates vector norms:

https://wolfram.com/xid/0b8ens9p0o-b7g2oh

Include a legend for two fields:

https://wolfram.com/xid/0b8ens9p0o-ksjv6o

Include the vector fields in the legend:

https://wolfram.com/xid/0b8ens9p0o-bejvz

Control the placement of the legend:

https://wolfram.com/xid/0b8ens9p0o-h6oib

PlotRange (9)
The full plot range is used by default:

https://wolfram.com/xid/0b8ens9p0o-e5htpa

Use all points to compute the range:

https://wolfram.com/xid/0b8ens9p0o-blj3hi

Specify an explicit limit for ,
, and
ranges:

https://wolfram.com/xid/0b8ens9p0o-iujowz


https://wolfram.com/xid/0b8ens9p0o-nvj2f1

Specify an explicit minimum range:

https://wolfram.com/xid/0b8ens9p0o-6mhl8


https://wolfram.com/xid/0b8ens9p0o-f1b74a

Specify an explicit maximum range:

https://wolfram.com/xid/0b8ens9p0o-dv35v5


https://wolfram.com/xid/0b8ens9p0o-tns6h

Specify different ,
, and
ranges:

https://wolfram.com/xid/0b8ens9p0o-eji1ea

PlotRangePadding (8)
Padding is computed automatically by default:

https://wolfram.com/xid/0b8ens9p0o-d2h2aw

Specify no padding for all ,
, and
ranges:

https://wolfram.com/xid/0b8ens9p0o-0h4yz

Specify an explicit padding for all ,
, and
ranges:

https://wolfram.com/xid/0b8ens9p0o-cl0fye

Add 10% padding to all ,
, and
ranges:

https://wolfram.com/xid/0b8ens9p0o-djbx3

Specify padding for and
ranges:

https://wolfram.com/xid/0b8ens9p0o-eirhh1

Specify different padding for ,
, and
ranges:

https://wolfram.com/xid/0b8ens9p0o-em1fr

Specify padding for the range:

https://wolfram.com/xid/0b8ens9p0o-n1k40

Use different padding forms for each dimension:

https://wolfram.com/xid/0b8ens9p0o-iz9ibd

PlotTheme (2)
RegionBoundaryStyle (5)
Show the region defined by a region function:

https://wolfram.com/xid/0b8ens9p0o-yrk32

Use None to not show the boundary:

https://wolfram.com/xid/0b8ens9p0o-mzy3v

Specify a style for the boundary:

https://wolfram.com/xid/0b8ens9p0o-3hu16t

The boundaries of full rectangular regions are not shown:

https://wolfram.com/xid/0b8ens9p0o-7wf5ba

Specify a style for full rectangular regions:

https://wolfram.com/xid/0b8ens9p0o-bkobwf

RegionFunction (3)
Plot vectors only over certain quadrants:

https://wolfram.com/xid/0b8ens9p0o-juf837

Plot vectors only over regions where the field magnitude is above a given threshold:

https://wolfram.com/xid/0b8ens9p0o-q5srw6

Use any logical combination of conditions:

https://wolfram.com/xid/0b8ens9p0o-gbou4u

ScalingFunctions (1)
VectorAspectRatio (2)
VectorColorFunction (4)
Color the vectors according to their norm:

https://wolfram.com/xid/0b8ens9p0o-l4o9lw

Use any named color gradient from ColorData:

https://wolfram.com/xid/0b8ens9p0o-jk16xa

Color the vectors according to their value:

https://wolfram.com/xid/0b8ens9p0o-f41zkj

Use VectorColorFunctionScaling->False to get unscaled values:

https://wolfram.com/xid/0b8ens9p0o-l4us3

VectorColorFunctionScaling (4)
By default, scaled values are used:

https://wolfram.com/xid/0b8ens9p0o-ehenrc

Use VectorColorFunctionScaling->False to get unscaled values:

https://wolfram.com/xid/0b8ens9p0o-qk8lj6

Use unscaled coordinates in the direction and scaled coordinates in the
direction:

https://wolfram.com/xid/0b8ens9p0o-vnou8

Explicitly specify the scaling for each color function argument:

https://wolfram.com/xid/0b8ens9p0o-f14zf7

VectorMarkers (3)
By default, 3D arrows are used:

https://wolfram.com/xid/0b8ens9p0o-bjkrd9


https://wolfram.com/xid/0b8ens9p0o-kx459h

Use Placed to control the arrow placement relative to the vector points:

https://wolfram.com/xid/0b8ens9p0o-8ybcqb

https://wolfram.com/xid/0b8ens9p0o-h3294t

VectorPoints (7)
Use automatically determined vector points:

https://wolfram.com/xid/0b8ens9p0o-likp

Use symbolic names to specify the set of field vectors:

https://wolfram.com/xid/0b8ens9p0o-i2b0f2

Create a regular grid of field vectors with the same number of arrows for ,
, and
:

https://wolfram.com/xid/0b8ens9p0o-ekb8ya

Create a regular grid of field vectors with a different number of arrows for ,
, and
:

https://wolfram.com/xid/0b8ens9p0o-74eh0

Specify a list of points for showing field vectors:

https://wolfram.com/xid/0b8ens9p0o-koe9z

Use a different number of field vectors on a packed grid:

https://wolfram.com/xid/0b8ens9p0o-b59v42

The location for vectors is given in the middle of the drawn vector:

https://wolfram.com/xid/0b8ens9p0o-l3pdr

https://wolfram.com/xid/0b8ens9p0o-4f45g

Start the vectors at the points:

https://wolfram.com/xid/0b8ens9p0o-sjkpfe

VectorRange (4)
The clipping of vectors with very small or very large magnitudes is done automatically:

https://wolfram.com/xid/0b8ens9p0o-bvc580

Specify the range of vector norms:

https://wolfram.com/xid/0b8ens9p0o-ycbb09


https://wolfram.com/xid/0b8ens9p0o-m0tgf


https://wolfram.com/xid/0b8ens9p0o-qe76s

VectorStyle (2)
VectorColorFunction takes precedence over colors in VectorStyle:

https://wolfram.com/xid/0b8ens9p0o-cwffmy

Use VectorColorFunction→None to specify colors with VectorStyle:

https://wolfram.com/xid/0b8ens9p0o-c3z248

Applications (1)Sample problems that can be solved with this function
An electrostatic potential built from a collection of point charges at positions
:

https://wolfram.com/xid/0b8ens9p0o-dcbhq9

https://wolfram.com/xid/0b8ens9p0o-cg2qge

An electric field between two charges and
:

https://wolfram.com/xid/0b8ens9p0o-d0m638
The electrostatic potential between two charges and
:

https://wolfram.com/xid/0b8ens9p0o-d4tz6d

The electric field between two charges and
:

https://wolfram.com/xid/0b8ens9p0o-clmggh


https://wolfram.com/xid/0b8ens9p0o-bqt1os

Properties & Relations (14)Properties of the function, and connections to other functions
Use ListVectorPlot3D to visualize data:

https://wolfram.com/xid/0b8ens9p0o-cbq7px

https://wolfram.com/xid/0b8ens9p0o-ii6evm

Plot vectors along surfaces with SliceVectorPlot3D:

https://wolfram.com/xid/0b8ens9p0o-ckcmzh

Plot data vectors on surfaces with ListSliceVectorPlot3D:

https://wolfram.com/xid/0b8ens9p0o-dgaz9l

https://wolfram.com/xid/0b8ens9p0o-exn4uf

Use StreamPlot3D to plot streamlines for a 3D vector field:

https://wolfram.com/xid/0b8ens9p0o-tfo4y9

Use ListStreamPlot3D to plot with data:

https://wolfram.com/xid/0b8ens9p0o-hsvgak

https://wolfram.com/xid/0b8ens9p0o-bviuq7

Use VectorDisplacementPlot to visualize the effect of a displacement vector field on a specified region:

https://wolfram.com/xid/0b8ens9p0o-czkc2f

Use ListVectorDisplacementPlot to visualize the effect of displacement field data on a region:

https://wolfram.com/xid/0b8ens9p0o-c4etvu

https://wolfram.com/xid/0b8ens9p0o-g31h2t

Use VectorDisplacementPlot3D to visualize the effect of a displacement vector field on a specified 3D region:

https://wolfram.com/xid/0b8ens9p0o-mhw7bs

Use ListVectorDisplacementPlot3D to visualize the effect of 3D displacement vector field data on a specified region:

https://wolfram.com/xid/0b8ens9p0o-e9pqu

https://wolfram.com/xid/0b8ens9p0o-kk9hv3

Use VectorPlot for plotting 2D vectors:

https://wolfram.com/xid/0b8ens9p0o-bzenb8

Use ListVectorPlot to plot with data:

https://wolfram.com/xid/0b8ens9p0o-exrywf

https://wolfram.com/xid/0b8ens9p0o-dv90zq

Use StreamPlot to plot with streamlines instead of vectors:

https://wolfram.com/xid/0b8ens9p0o-ey0nl


https://wolfram.com/xid/0b8ens9p0o-f8x037

https://wolfram.com/xid/0b8ens9p0o-eqnaj8

Use VectorDensityPlot to add a density plot of the scalar field:

https://wolfram.com/xid/0b8ens9p0o-gljrl7

Use StreamDensityPlot to plot streamlines instead of vectors:

https://wolfram.com/xid/0b8ens9p0o-f4yecd

Use ListVectorDensityPlot or ListStreamDensityPlot for plotting data:

https://wolfram.com/xid/0b8ens9p0o-i1hwev

https://wolfram.com/xid/0b8ens9p0o-fktigc

Use LineIntegralConvolutionPlot to plot the line integral convolution of a vector field:

https://wolfram.com/xid/0b8ens9p0o-biddpp

Plot a complex function as a vector field:

https://wolfram.com/xid/0b8ens9p0o-rjlzpk

Plot streams instead of vectors with ComplexStreamPlot:

https://wolfram.com/xid/0b8ens9p0o-h5phyg

Use GeoVectorPlot to generate a vector plot over the Earth:

https://wolfram.com/xid/0b8ens9p0o-jyfddy

https://wolfram.com/xid/0b8ens9p0o-jpldfa

https://wolfram.com/xid/0b8ens9p0o-bm7stf

Use GeoStreamPlot to use streams instead of vectors:

https://wolfram.com/xid/0b8ens9p0o-fspawf

Wolfram Research (2008), VectorPlot3D, Wolfram Language function, https://reference.wolfram.com/language/ref/VectorPlot3D.html (updated 2022).
Text
Wolfram Research (2008), VectorPlot3D, Wolfram Language function, https://reference.wolfram.com/language/ref/VectorPlot3D.html (updated 2022).
Wolfram Research (2008), VectorPlot3D, Wolfram Language function, https://reference.wolfram.com/language/ref/VectorPlot3D.html (updated 2022).
CMS
Wolfram Language. 2008. "VectorPlot3D." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/VectorPlot3D.html.
Wolfram Language. 2008. "VectorPlot3D." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/VectorPlot3D.html.
APA
Wolfram Language. (2008). VectorPlot3D. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/VectorPlot3D.html
Wolfram Language. (2008). VectorPlot3D. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/VectorPlot3D.html
BibTeX
@misc{reference.wolfram_2025_vectorplot3d, author="Wolfram Research", title="{VectorPlot3D}", year="2022", howpublished="\url{https://reference.wolfram.com/language/ref/VectorPlot3D.html}", note=[Accessed: 26-April-2025
]}
BibLaTeX
@online{reference.wolfram_2025_vectorplot3d, organization={Wolfram Research}, title={VectorPlot3D}, year={2022}, url={https://reference.wolfram.com/language/ref/VectorPlot3D.html}, note=[Accessed: 26-April-2025
]}