ComplexStreamPlot [f,{z,zmin,zmax}]
generates a streamline plot of the vector field {Re [f],Im [f]} over the complex rectangle with corners zmin and zmax.
ComplexStreamPlot
ComplexStreamPlot [f,{z,zmin,zmax}]
generates a streamline plot of the vector field {Re [f],Im [f]} over the complex rectangle with corners zmin and zmax.
Details and Options
- ComplexStreamPlot plots streamlines that show the local direction of the complex vector field at each point, effectively solving the differential equation and then plotting .
- ComplexStreamPlot by default shows enough streamlines to achieve a roughly uniform density throughout the plot and shows no background scalar field.
- No streamlines are shown at any positions for which f etc. do not evaluate to a complex number.
- ComplexStreamPlot [f,{z,n}] is equivalent to ComplexStreamPlot [f,{z,-n-nI,n+nI}].
- ComplexStreamPlot has attribute HoldAll and evaluates f etc. only after assigning specific numerical values to z. In some cases, it may be more efficient to use Evaluate to evaluate f symbolically first.
- ComplexStreamPlot has the same options as Graphics , with the following additions and changes: [List of all options]
-
AspectRatio 1 ratio of height to width
- Common stream markers include:
-
"Segment" line segment aligned in the field direction"PinDart" pin dart aligned along the field"Dart" dart-shaped marker"Drop" drop-shaped marker
- The arguments supplied to functions in RegionFunction are , . Functions in ColorFunction are by default supplied with scaled versions of Re [z], Im [z], Abs [z], Arg [z], Re [f], Im [f], Abs [f], Arg [f].
-
AspectRatio 1 ratio of height to widthImageMargins 0. the margins to leave around the graphicPreserveImageOptions Automatic whether to preserve image options when displaying new versions of the same graphic
List of all options
Examples
open all close allBasic Examples (1)
Visualize a complex function of a complex variable as a stream plot:
Scope (22)
Sampling (8)
Plot a complex functions with streamlines placed with specified densities:
Plot the streamlines that go through a set of complex seed points:
Use both automatic and explicit seeding with styles for explicitly seeded streamlines:
Plot streamlines over a specified complex region:
Plot two functions together:
Use a specific number of mesh lines:
Specify specific mesh lines:
Use Evaluate to evaluate the vector field symbolically before numeric assignment:
Presentation (14)
Specify different dashings and arrowheads by setting to StreamScale :
Plot the streamlines with arrows colored according to the modulus of the function:
Apply a variety of streamline markers:
Use a theme with axes and a different default color:
Override the style from the theme:
Change the color function:
Specify a uniform color for the streamlines:
Specify mesh lines with different styles:
Specify global mesh line styles:
Shade mesh regions cyclically:
Apply a variety of styles to region boundaries:
Add a legend indicating the modulus of the function:
Use the functions as legend labels:
Use explicit labels for each vector field:
Options (60)
Background (1)
Use a colored background:
EvaluationMonitor (2)
Show where the vector field function is sampled:
Count the number of times the vector field function is evaluated:
PerformanceGoal (2)
Generate a higher-quality plot:
Emphasize performance, possibly at the cost of quality:
PlotLegends (7)
No legends are included, by default:
Include a legend that indicates the modulus of the function:
Include a legend to distinguish two functions:
Control the placement of the legend:
Use the functions as the legend text:
Use placeholder text:
Change the appearance of the legend:
PlotRange (5)
The full plot range is used by default:
Specify an explicit limit for both the and ranges:
Specify an explicit range:
Specify an explicit range:
Specify different and ranges:
PlotTheme (3)
Use a theme with simpler ticks and brighter colors:
Use a theme with automatic legends and dense streamlines:
Change the stream styles:
RegionBoundaryStyle (1)
By default, region boundaries are styled automatically:
Apply a variety of styles to region boundaries:
RegionFillingStyle (1)
By default, regions are filled:
Show no filling:
Choose a different filling:
RegionFunction (3)
Plot streamlines only over a disk:
Plot streamlines only over regions where the modulus of the function exceeds a given threshold:
Use a logical combination of conditions:
StreamColorFunction (5)
Color streamlines according to the modulus of the function:
Use any named color gradient from ColorData :
Use ColorData for predefined color gradients:
Specify a color function that blends two colors by :
Use StreamColorFunctionScaling False to get unscaled values:
StreamColorFunctionScaling (3)
By default, scaled values are used:
Use StreamColorFunctionScaling False to get unscaled values:
Explicitly specify the scaling for each color function argument:
StreamMarkers (8)
Streamlines are drawn as arrows by default:
Use a named appearance to draw the streamlines:
Use different markers for different vector fields:
Use named styles:
Named arrow styles:
Named dot styles:
Named pointer styles:
Named dart styles:
StreamPoints (5)
Specify a specific maximum number of streamlines:
Use symbolic names to specify the number of streamlines:
Use both automatic and explicit seeding with styles for explicitly seeded streamlines:
Specify the minimum distance between streamlines:
Specify the minimum distance between streamlines at the start and end of a streamline:
StreamScale (9)
Create full streamlines without segmentation:
Use curves for streamlines:
Use symbolic names to control the lengths of streamlines:
Specify segment lengths:
Specify an explicit dashing pattern for streamlines:
Specify the number of points rendered on each streamline segment:
Specify absolute aspect ratios relative to the longest line segment:
Specify relative aspect ratios relative to each line segment:
Scale the length of the arrows by the :
StreamStyle (5)
StreamColorFunction has precedence over StreamStyle for colors:
Use StreamColorFunction None to specify colors with StreamStyle :
Apply a variety of styles to the streamlines:
Specify a custom arrowhead:
Set the style for multiple functions:
Applications (10)
Basic Applications (1)
Plot a function with a simple zero:
Shift the function to the left by 1:
Plot a function with a double zero:
Plot a square root function:
Plot a trigonometric function:
Plot a transcendental function:
Plot a function with a simple pole:
Plot a function with a double pole:
Other Applications (9)
Streamlines that diverge from a point indicate a simple zero:
Streamlines can also converge at a simple zero:
With , the real vector field corresponding to the complex function is , and the trajectories that follow the field satisfy the differential equation . The implicit solution is for real , which corresponds to a family of circles that are tangent to the real axis at the origin:
In polar coordinates, the trajectories are for any real :
More generally, for where is an integer, the streamlines follow for constant :
Near a zero of order , the streamlines form loops that start and end at the zero in directions:
Near a pole of order , the streamlines converge to the pole from directions and diverge from the pole from directions:
The function has simple zeros at and , poles of order 1 at , and a pole of order 2 at :
Near an essential singularity, the streamlines vary wildly:
Plot a function and its derivatives:
Generate a Pólya plot:
Let be a complex potential for an ideal fluid flow. Then is the velocity potential, is the stream function, and the fluid velocity field is . By the Cauchy–Riemann equations, , so you can generate a stream plot with the conjugate of . Show streamlines for flow around a cylinder with circulation:
Show streamlines for flow external to a corner:
Properties & Relations (15)
ComplexStreamPlot is a special case of StreamPlot :
ComplexVectorPlot plots complex numbers as vectors:
ComplexVectorPlot is a special case of VectorPlot :
Use VectorDisplacementPlot to visualize the effect of a complex function on a specified region:
Use VectorPlot3D and StreamPlot3D to visualize 3D vector fields:
ComplexContourPlot plots curves over the complexes:
ComplexRegionPlot plots regions over the complexes:
ComplexPlot shows the argument and magnitude of a function using color:
Use ComplexPlot3D to use the axis for the magnitude:
Use ComplexArrayPlot for arrays of complex numbers:
Use ReImPlot and AbsArgPlot to plot complex values over the real numbers:
Use ComplexListPlot to show the location of complex numbers in the plane:
Use ListVectorPlot for plotting data:
Use ListStreamPlot to plot streams instead of vectors:
Use VectorDensityPlot to add a density plot of a scalar field:
Use StreamDensityPlot to use streams instead of vectors:
Use ListVectorDensityPlot to generate a density plot of a scalar field based on data:
Use ListStreamDensityPlot to plot streams instead of vectors:
Use LineIntegralConvolutionPlot to plot the line integral convolution of a vector field:
Related Guides
Text
Wolfram Research (2020), ComplexStreamPlot, Wolfram Language function, https://reference.wolfram.com/language/ref/ComplexStreamPlot.html (updated 2020).
CMS
Wolfram Language. 2020. "ComplexStreamPlot." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/ref/ComplexStreamPlot.html.
APA
Wolfram Language. (2020). ComplexStreamPlot. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/ComplexStreamPlot.html
BibTeX
@misc{reference.wolfram_2025_complexstreamplot, author="Wolfram Research", title="{ComplexStreamPlot}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/ComplexStreamPlot.html}", note=[Accessed: 17-November-2025]}
BibLaTeX
@online{reference.wolfram_2025_complexstreamplot, organization={Wolfram Research}, title={ComplexStreamPlot}, year={2020}, url={https://reference.wolfram.com/language/ref/ComplexStreamPlot.html}, note=[Accessed: 17-November-2025]}