VectorPlot3D
VectorPlot3D[{vx,vy,vz},{x,xmin,xmax},{y,ymin,ymax},{z,zmin,zmax}]
generates a 3D vector plot of the vector field {vx,vy,vz} as a function of x, y, and z.
VectorPlot3D[{field1,field2,…},{x,xmin,xmax},{y,ymin,ymax},{z,zmin,zmax}]
plots several vector fields.
VectorPlot3D[…,{x,y,z}∈reg]
takes the variables {x,y,z} to be in the geometric region reg.
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)
Scope (14)
Sampling (5)
Use Evaluate to evaluate the vector field symbolically before numeric assignment:
Plot vectors over specified regions:
Plot a vector field with vectors placed with specified densities:
Plot a field with arrows placed at random locations:
Plot multiple vector fields with different colors for each field:
Presentation (9)
Options (65)
BoxRatios (2)
EvaluationMonitor (2)
PerformanceGoal (2)
PlotLegends (5)
PlotRange (9)
PlotRangePadding (8)
RegionBoundaryStyle (5)
Show the region defined by a region function:
Use None to not show the boundary:
Specify a style for the boundary:
RegionFunction (3)
ScalingFunctions (1)
VectorAspectRatio (2)
VectorColorFunction (4)
Color the vectors according to their norm:
Use any named color gradient from ColorData:
Color the vectors according to their value:
Use VectorColorFunctionScaling->False to get unscaled values:
VectorColorFunctionScaling (4)
By default, scaled values are used:
Use VectorColorFunctionScaling->False to get unscaled values:
Use unscaled coordinates in the direction and scaled coordinates in the direction:
Explicitly specify the scaling for each color function argument:
VectorMarkers (3)
By default, 3D arrows are used:
Use Placed to control the arrow placement relative to the vector points:
VectorPoints (7)
Use automatically determined vector points:
Use symbolic names to specify the set of field vectors:
Create a regular grid of field vectors with the same number of arrows for , , and :
Create a regular grid of field vectors with a different number of arrows for , , and :
Specify a list of points for showing field vectors:
Use a different number of field vectors on a packed grid:
The location for vectors is given in the middle of the drawn vector:
VectorRange (4)
VectorStyle (2)
VectorColorFunction takes precedence over colors in VectorStyle:
Use VectorColorFunction→None to specify colors with VectorStyle:
Applications (1)
Properties & Relations (14)
Use ListVectorPlot3D to visualize data:
Plot vectors along surfaces with SliceVectorPlot3D:
Plot data vectors on surfaces with ListSliceVectorPlot3D:
Use StreamPlot3D to plot streamlines for a 3D vector field:
Use ListStreamPlot3D to plot with data:
Use VectorDisplacementPlot to visualize the effect of a displacement vector field on a specified region:
Use ListVectorDisplacementPlot to visualize the effect of displacement field data on a region:
Use VectorDisplacementPlot3D to visualize the effect of a displacement vector field on a specified 3D region:
Use ListVectorDisplacementPlot3D to visualize the effect of 3D displacement vector field data on a specified region:
Use VectorPlot for plotting 2D vectors:
Use ListVectorPlot to plot with data:
Use StreamPlot to plot with streamlines instead of vectors:
Use VectorDensityPlot to add a density plot of the scalar field:
Use StreamDensityPlot to plot streamlines instead of vectors:
Use ListVectorDensityPlot or ListStreamDensityPlot for plotting data:
Use LineIntegralConvolutionPlot to plot the line integral convolution of a vector field:
Plot a complex function as a vector field:
Plot streams instead of vectors with ComplexStreamPlot:
Use GeoVectorPlot to generate a vector plot over the Earth:
Use GeoStreamPlot to use streams instead of vectors:
Text
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.
APA
Wolfram Language. (2008). VectorPlot3D. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/VectorPlot3D.html