ReImPlot

ReImPlot[f,{x,xmin,xmax}]

generates a plot of Re[f] and Im[f] as functions of x from xmin to xmax.

ReImPlot[{f1,f2,},{x,xmin,xmax}]

plots several functions.

ReImPlot[{,w[fi],},]

plots fi with features defined by the symbolic wrapper w.

ReImPlot[,{x}reg]

takes the variable x to be in the geometric region reg.

Details and Options

  • ReImPlot evaluates f at different values of x to create smooth curves of the form {x,Re[f[x]]} and {x,Im[f[x]]}.
  • Gaps are left at any x where the fi evaluate to non-numeric values.
  • The region reg can be any RegionQ object in 1D.
  • ReImPlot treats the variable x as local, effectively using Block.
  • ReImPlot has attribute HoldAll and evaluates f only after assigning specific numerical values to x.
  • In some cases, it may be more efficient to use Evaluate to evaluate f symbolically before specific numerical values are assigned to x.
  • Wrappers apply to both Re[f] and Im[f].
  • The following wrappers w can be used for the fi:
  • Annotation[fi,label]provide an annotation for the fi
    Button[fi,action]evaluate action when the curve for fi is clicked
    Callout[fi,label]label the function with a callout
    Callout[fi,label,pos]place the callout at relative position pos
    EventHandler[fi,events]define a general event handler for fi
    Hyperlink[fi,uri]make the function a hyperlink
    Labeled[fi,label]label the function
    Labeled[fi,label,pos]place the label at relative position pos
    Legended[fi,label]identify the function in a legend
    PopupWindow[fi,cont]attach a popup window to the function
    StatusArea[fi,label]display in the status area on mouseover
    Style[fi,styles]show the function using the specified styles
    Tooltip[fi,label]attach a tooltip to the function
    Tooltip[fi]use functions as tooltips
  • Wrappers w can be applied at multiple levels:
  • w[fi]wrap the fi
    w[{f1,}]wrap a collection of fi
    w1[w2[]]use nested wrappers
  • Callout, Labeled and Placed can use the following positions pos:
  • Automaticautomatically placed labels
    Above, Below, Before, Afterpositions around the curve
    xnear the curve at a position x
    Scaled[s]scaled position s along the curve
    {s,Above},{s,Below},relative position at position s along the curve
    {pos,epos}epos in label placed at relative position pos of the curve
  • ReImPlot has the same options as Plot, with the following additions and changes:
  • ReImLabelsAutomatichow to annotate the real and imaginary components
    ReImStyleAutomatichow to style the real and imaginary components
  • Possible settings for ClippingStyle are:
  • Automaticuse a dotted line for the clipped portion
    Noneomit the clipped portion of the curve
    styleuse style for the clipped portion
  • With the default settings Exclusions->Automatic and ExclusionsStyle->None, Plot breaks curves at discontinuities and singularities it detects. Exclusions->None joins across discontinuities and singularities.
  • Exclusions->{x1,x2,} is equivalent to Exclusions->{x==x1,x==x2,}.
  • PlotLegends->"Expressions" uses the fi as the legend text.
  • ReImPlot initially evaluates f at a number of equally spaced sample points specified by PlotPoints. Then it uses an adaptive algorithm to choose additional sample points, subdividing a given interval at most MaxRecursion times.
  • Since only a finite number of sample points are used, it is possible for ReImPlot to miss features of f. Increasing the settings for PlotPoints and MaxRecursion will often catch such features.
  • Themes that affect curves include:
  • "ThinLines"thin plot lines
    "MediumLines"medium plot lines
    "ThickLines"thick plot lines
  • The arguments supplied to functions in MeshFunctions and RegionFunction are x, y. Functions in ColorFunction are by default supplied with scaled versions of these arguments.
  • ScalingFunctions->"scale" scales the coordinate; ScalingFunctions{"scalex","scaley"} scales both the and coordinates.

Examples

open all close all

Basic Examples  (3)

Plot the real and imaginary parts of a complex-valued function of a real variable:

In[1]:=
Click for copyable input
Out[1]=

Plot several functions:

In[1]:=
Click for copyable input
Out[1]=

Label each curve:

In[1]:=
Click for copyable input
Out[1]=

Scope  (18)

Options  (56)

Applications  (7)

Properties & Relations  (1)

Possible Issues  (1)

Introduced in 2019
(12.0)