ParametricPlot[{fx,fy},{u,umin,umax}]
产生一个曲线的参数图,其中 x 和 y 的坐标 fx 和 fy 为 u 的函数.
ParametricPlot[{{fx,fy},{gx,gy},…},{u,umin,umax}]
绘制几个参数化曲线.
ParametricPlot[{fx,fy},{u,umin,umax},{v,vmin,vmax}]
绘制一个参数化区域.
ParametricPlot[{{fx,fy},{gx,gy},…},{u,umin,umax},{v,vmin,vmax}]
绘制几个参数化区域.
ParametricPlot[{…,w[{fx,fy}],…},…]
绘制特征由符号封装 w 定义的曲线 {fx,fy}.
ParametricPlot[…,{u,v}∈reg]
将参数 {u,v} 视为位于几何区域 reg 中.
ParametricPlot
ParametricPlot[{fx,fy},{u,umin,umax}]
产生一个曲线的参数图,其中 x 和 y 的坐标 fx 和 fy 为 u 的函数.
ParametricPlot[{{fx,fy},{gx,gy},…},{u,umin,umax}]
绘制几个参数化曲线.
ParametricPlot[{fx,fy},{u,umin,umax},{v,vmin,vmax}]
绘制一个参数化区域.
ParametricPlot[{{fx,fy},{gx,gy},…},{u,umin,umax},{v,vmin,vmax}]
绘制几个参数化区域.
ParametricPlot[{…,w[{fx,fy}],…},…]
绘制特征由符号封装 w 定义的曲线 {fx,fy}.
ParametricPlot[…,{u,v}∈reg]
将参数 {u,v} 视为位于几何区域 reg 中.
更多信息和选项
- ParametricPlot 在一维域上绘制时称为参数化曲线,在二维域上绘制时称为参数化区域.
- 对于一维定义域,用不同 u 的值计算 fx 和 fy,用于创建形式为 {fx[u],fy[u]} 的平滑曲线. 该函数可视化曲线
. - 对于两个参数 u 和 v,将针对 u 和 v 的不同值对 {fx,fy} 进行计算,以创建点的区域 {fx[u,v],fy[u,v]}. 它可视化了区域
. - 曲线和区域可能与自身相交或重叠.
- 在 fi 运算为除实数以外的任何值的 u 处会留下间距.
- 范围 umin、umax、vmin 和 vmax 可以是实数或 Quantity 表达式.
- 区域 reg 可以是一维或二维的任何 RegionQ 对象.
- ParametricPlot 将变量 u 和 v 视为局部变量,相当于使用 Block.
- ParametricPlot 有属性 HoldAll,只在将具体的数值赋给变量后才计算 fi 和 gi.
- 在某些情况下,在将具体数值赋给变量之前,用 Evaluate 以符号方式计算 fi 和 gi 可能更高效.
- 可在多个层级上应用封装 w:
-
w[{fx,fy}] 封装 {fx,fy} w[{{fx,fy},{gx,gy},…}] 封装一组曲线 w1[w2[…]] 使用嵌套的封装 - Callout、Labeled 和 Placed 可使用以下位置 pos:
-
Automatic 自动放置标签 Above, Below, Before, After 曲线周围的位置 u 参数 u 处靠近曲线的位置 {x,y} 靠近 {x,y} 的位置 Scaled[s] 沿曲线的缩放位置 s {s,Above},{s,Below},… 沿曲线的位置 s 处的相关位置 {pos,epos} 放置在曲线相关位置 pos 上的标签内的位置 epos - ParametricPlot 具有与 Graphics 相同的选项,不同之处及更多选项如下所示: [所有选项的列表]
-
AspectRatio Automatic 高宽比 Axes True 是否绘制坐标轴 BoundaryStyle Automatic 怎样绘制区域的边界 ColorFunction Automatic 怎样对曲线或区域着色 ColorFunctionScaling True 是否缩放 ColorFunction 的参数 EvaluationMonitor None 每次运行函数时要计算的表达式 Exclusions Automatic 要排除的 u 点或 u、v 曲线 ExclusionsStyle None 在要排除的点或曲线处绘制什么内容 Frame Automatic 是否在绘图周围添加边框 LabelingSize Automatic 标注和标签的最大尺寸 MaxRecursion Automatic 允许的递归子划分的最大数量 Mesh None 绘制多少网格 MeshFunctions Automatic 如何确定网格的位置 MeshShading None 如何处理网格点或线之间区域的色调 MeshStyle Automatic 网格的样式 Method Automatic 细化曲线或区域的方式 PerformanceGoal $PerformanceGoal 优化的目标 PlotHighlighting Automatic 曲线的突出显示效果 PlotLabels None 用于曲线的标签 PlotLegends None 曲线的图例 PlotPoints Automatic 每个参数初始样本点的数量 PlotRange Automatic 要包含的值的范围 PlotRangeClipping True 在绘图范围边界处是否进行剪切 PlotStyle Automatic 指定每个对象的样式的图形指令 PlotTheme $PlotTheme 绘图的整体主题 RegionFunction (True&) 如何确定是否包含一个点 ScalingFunctions None 如何缩放个别坐标 TextureCoordinateFunction Automatic 如何决定纹理坐标 TextureCoordinateScaling True 是否缩放 TextureCoordinateFunction 的参数 WorkingPrecision MachinePrecision 内部计算使用的精度 - 可用 Tooltip、StatusArea 或 Annotation 为曲线和区域指定交互式标注.
- ParametricPlot[Tooltip[{{fx,fy},…},…]] 指定应将 {fx,fy} 显示为相应曲线或区域的提示标签.
- Tooltip[{fx,fy},label] 为曲线或区域指定一个明确的提示标签.
- PlotLegends 的典型设置包括:
-
None 不使用图例 Automatic 自动确定图例 "Expressions" 用 {fx, fy}、{gx, gy} … 作为图例的标签 {lbl1,lbl2,…} 用 lbl1、lbl2、… 作为图例的标签 Placed[lspec,…] 指定图例的放置 - PlotStylesty 指定每条曲线使用的样式. 可能的设置包括:
-
{sty1,sty2,…} 针对各个数据集的一系列样式 <|"key"val,…|> 针对不同层级的数据的样式元素 - 接受的键有:
-
"Base" 所有 fi 的整体样式 "Functions" 针对每个 fi 的样式列表 styi - ColorData["DefaultPlotColors"] 给出 PlotStyle 使用的默认颜色序列.
- ParametricPlot 最初在 PlotPoints 指定的多个等距采样点处对每个函数进行计算. 然后使用自适应算法来选择额外的样本点,最多将每个参数中给定的区间细分 MaxRecursion 次.
- 应该注意的是,由于使用有限数量的样本点,ParametricPlot 可能会遗漏函数中的特征. 如果想要检查所得结果是否正确,应尝试增大 PlotPoints 和 MaxRecursion 的设置.
- 如果无法绘制达到一定平滑程度的曲线,则 On[ParametricPlot::accbend] 可以使 ParametricPlot 显示一条提示信息.
- 缺省设置 Mesh->Automatic 对应于曲线的 None,对应于区域的 15.
- 设置 Mesh->All,ParametricPlot 将在每条曲线的每个样本点处绘制一个点或绘制一条线以表明每个区域的子划分.
- 缺省设置 MeshFunctions->Automatic 对应于曲线的 {#3&},对应于区域的 {#3&,#4&}.
- 提供给 MeshFunctions 和 RegionFunction 中的函数的参数是 x、y、u、v. 默认情况下,提供给 ColorFunction 和 TextureCoordinateFunction 中的函数的是这些参数缩放过的版本.
- 在每条曲线或每个区域的所有地方对函数进行计算.
- Highlighted 和 PlotHighlighting 可用的突出显示效果包括:
-

style 突出显示指定的曲线 
"Ball" 突出显示并标注曲线中指定的点 
"Dropline" 突出显示并标注曲线中指定的点,同时绘制到坐标轴的准线 
"XSlice" 突出显示并标注垂直切片上的所有点 
"YSlice" 突出显示并标注水平切片上的所有点 
Placed[effect,pos] 静态突出显示给定位置 pos - 突出显示的位置指定 pos 包括:
-
x, {x} 在 {x,y} 处突出显示,自动选择 y {x,y} 在 {x,y} 处突出显示 {pos1,pos2,…} 多个位置 posi - ScalingFunctions 的可能设置包括:
-
{sx,sy} 缩放 x 和 y 坐标轴 {sx,sy,su} 缩放 u 参数空间 {sx,sy,su,sv} 缩放 u 和 v 参数空间 - 常见的内置缩放函数 s 包括:
-
"Log" 
对数刻度,自动进行标记 "Log10" 
以 10 为底的对数刻度,用 10 的幂进行标记 "SignedLog" 
类似对数的刻度,包含 0 和负数 "Reverse" 
反转坐标的方向 "Infinite" 
无穷刻度 - 缩放 u 或 v 参数空间将影响如何对绘图采样,但不影响整体的视觉外观.
- 对于曲线,ParametricPlot 返回 Graphics[Line[data]],对于区域,它返回 Graphics[GraphicsComplex[data]].
所有选项的列表
范例
打开所有单元 关闭所有单元基本范例 (4)
ParametricPlot[{Sin[u], Sin[2u]}, {u, 0, 2Pi}]ParametricPlot[r ^ 2{ Sqrt[t]Cos[t], Sin[t]}, {t, 0, 3Pi / 2}, {r, 1, 2}]ParametricPlot[{{2Cos[t], 2Sin[t]}, {2Cos[t], Sin[t]}, {Cos[t], 2Sin[t]}, {Cos[t], Sin[t]}}, {t, 0, 2Pi}, PlotLegends -> "Expressions"]ParametricPlot[{{2r Cos[t], r Sin[t]}, {r Cos[t], 2r Sin[t]}}, {t, 0, 2Pi}, {r, 0, 1}, Mesh -> False]范围 (34)
采样 (9)
ParametricPlot[{Sin[12u]Cos[u], Sin[12u]Sin[u]}, {u, 0, 2Pi}]ParametricPlot[{Sqrt[1 / u], u}, {u, 0, 2}]//Quiet{ParametricPlot[{Sqrt[Sin[2u]]Cos[u], Sqrt[Sin[2u]]Sin[u]}, {u, 0, 2Pi}], ParametricPlot[Im[{Sqrt[Sin[2u]]Cos[u], Sqrt[Sin[2u]]Sin[u]}], {u, 0, 2Pi}]}ParametricPlot[{u, Floor[u]}, {u, 0, 25}]用 PlotPoints 和 MaxRecursion 控制相应的采样:
Grid[Table[ParametricPlot[{Cos[u], Sin[u]}, {u, 0, 2Pi}, PlotPoints -> pp, MaxRecursion -> mr], {mr, {0, 2}}, {pp, {5, 10}}]]Grid[Table[ParametricPlot[{v Cos[u], v Sin[u]}, {u, 0, 2Pi}, {v, 1, 2}, PlotPoints -> pp, MaxRecursion -> mr, Mesh -> None], {mr, {0, 2}}, {pp, {5, 10}}]]用 PlotRange 强调感兴趣的区域:
Table[ParametricPlot[{Exp[u] Cos[u], Exp[u] Sin[u]}, {u, 0, 10}, PlotRange -> pr], {pr, {10, 50, 250}}]用 Exclusions 删除点或分割最后的曲线:
ParametricPlot[{Tan[u], u}, {u, 0, 2Pi}, Exclusions -> Range[Pi / 2, 2Pi, Pi]]ParametricPlot[{Tan[u], u + v}, {u, 0, 2Pi}, {v, 0, 1}, Exclusions -> {u == Pi / 2, u == 3Pi / 2}, Axes -> None]Subscript[𝒟, 1] = ImplicitRegion[0 ≤ θ ≤ 3π / 4, {θ}];ParametricPlot[{Cos[u], Sin[u]}, {u}∈Subscript[𝒟, 1]]Subscript[𝒟, 2] = ImplicitRegion[0 ≤ θ ≤ 3π / 4∧1 / 4 ≤ r ≤ 3 / 4, {θ, r}];ParametricPlot[{r Cos[u], r Sin[u]}, {u, r}∈Subscript[𝒟, 2]]还可以用 MeshRegion 来指定参数的域:
𝒟 = MeshRegion[{{0, 1}, {5, 1}, {5, 2}}, Polygon[{1, 2, 3}]];ParametricPlot[r ^ 2{Sqrt[t]Cos[t], Sin[t]}, {t, r}∈𝒟]标签和图例 (13)
使用 Callout 添加表达式作为标签:
ParametricPlot[Callout[{Sin[u], Sin[2u]}], {u, 0, 2Pi}]ParametricPlot[Callout[{Sin[u], Sin[2u]}, "label"], {u, 0, 2Pi}]ParametricPlot[Callout[r ^ 2{ Sqrt[t]Cos[t], Sin[t]}, "label"], {t, 0, 3Pi / 2}, {r, 1, 2}]Table[ParametricPlot[Callout[{Cos[u], Sin[u]}, "label", i], {u, 0, 2Pi}], {i, {Pi / 4, 3Pi / 4}}]Table[ParametricPlot[Callout[{Cos[u], Sin[u]}, "label", Scaled[i]], {u, 0, 2Pi}], {i, {1 / 8, 3 / 8}}]Table[ParametricPlot[Callout[{Cos[u], Sin[u]}, "label", pos], {u, 0, 2Pi}, PlotLabel -> pos, Axes -> False, Frame -> True], {pos, {Top, Bottom}}]Table[ParametricPlot[Callout[{Cos[u], Sin[u]}, "label", pos], {u, 0, 2Pi}, Axes -> False, Frame -> True], {pos, {Before, After}}]ParametricPlot[Callout[r ^ 2{ Sqrt[t]Cos[t], Sin[t]}, "label", {-3, 2}], {t, 0, 3Pi / 2}, {r, 1, 2}]用 PlotLabels 标签曲线:
ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 2Pi}, PlotLabels -> "Expressions"]ParametricPlot[{{u Cos[u], u Sin[u]}, {2u Cos[u], 2u Sin[u]}, {3u Cos[u], 3u Sin[u]}}, {u, 0, 3 / 2Pi}, PlotLabels -> Callout["Expressions", After]]ParametricPlot[Callout[{u Cos[u], u Sin[u]}, "label", Scaled[0.8]], {u, 0, 3 / 2Pi}]ParametricPlot[Callout[{u Cos[u], u Sin[u]}, "label", {Scaled[0.3], Below}], {u, 0, 3 / 2Pi}]ParametricPlot[Callout[{u Cos[u], u Sin[u]}, "label", {4, -3}], {u, 0, 2Pi}]ParametricPlot[Callout[r ^ 2{ Sqrt[t]Cos[t], Sin[t]}, "label", {-5, 3}], {t, 0, 3Pi / 2}, {r, 1, 2}]ParametricPlot[{{u Cos[u], u Sin[u]}, {2u Cos[u], 2u Sin[u]}, {3u Cos[u], 3u Sin[u]}}, {u, 0, 3 / 2Pi}, PlotLegends -> "Expressions"]ParametricPlot[{{u Cos[u], u Sin[u]}(t - u), {2u Cos[u], 2u Sin[u]}(t - u), {3u Cos[u], 3u Sin[u]}(t - u)}, {u, 0, 2Pi}, {t, 0, 1}, PlotLegends -> "Expressions"]使用 Legended 为特殊曲线提供图例:
ParametricPlot[{{u Cos[u], u Sin[u]}, Legended[{u Sin[u], u Cos[u]}, "label"]}, {u, 0, 3 / 2Pi}]使用 Placed 改变图例位置:
ParametricPlot[{{u Cos[u], u Sin[u]}, Legended[{u Sin[u], u Cos[u]}, Placed["label", Above]]}, {u, 0, 3 / 2Pi}]ParametricPlot[{Cos[u] / (u + 1), Sin[u] / (u + 1)}, {u, 0, 5 / 2Pi}]ParametricPlot[Callout[{Cos[u] / (u + 1), Sin[u] / (u + 1)}, "hello", 6], {u, 1, 7}]{ParametricPlot[{Cos[u] / (u + 1), Sin[u] / (u + 1)}, {u, 1, 7}, PlotHighlighting -> "Dropline"], ParametricPlot[{Cos[u] / (u + 1), Sin[u] / (u + 1)}, {u, 1, 7}, PlotHighlighting -> "XSlice"]}用 Highlighted 强调绘图中某些特定的点:
ParametricPlot[Highlighted[{Cos[u] / (u + 1), Sin[u] / (u + 1)}, Placed["Ball", 0.05]], {u, 1, 7}]ParametricPlot[Highlighted[{Cos[u] / (u + 1), Sin[u] / (u + 1)}, Placed["Ball", {{-0.2}, {0.2}}]], {u, 1, 7}]演示 (12)
{ParametricPlot[Evaluate[Table[{i Cos[u], i Sin[u]}, {i, 1, 3}]], {u, 0, 2Pi}],
ParametricPlot[Evaluate[Table[{(v + i) Cos[u], (v + i)Sin[u]}, {i, 1, 3}]], {u, 0, 2Pi}, {v, 0, 0.75}, Mesh -> None]}{ParametricPlot[Evaluate[Table[{i Cos[u], i Sin[u]}, {i, 1, 3}]], {u, 0, 2Pi}, PlotLegends -> Automatic],
ParametricPlot[Evaluate[Table[{(v + i) Cos[u], (v + i)Sin[u]}, {i, 1, 3}]], {u, 0, 2Pi}, {v, 0, 0.75}, Mesh -> None, PlotLegends -> Automatic]}ParametricPlot[Evaluate[Table[{i Cos[u], i Sin[u]}, {i, 1, 3}]], {u, 0, 2Pi}, PlotLabels -> Callout[Automatic, After]]ParametricPlot[Evaluate[Table[{i Cos[u], i Sin[u]}, {i, 1, 3}]], {u, 0, 2Pi}, PlotStyle -> {Blue, Directive[Red, Dashed], Directive[Purple, Thick]}]ParametricPlot[Evaluate[Table[{(v + i) Cos[u], (v + i)Sin[u]}, {i, 1, 3}]], {u, 0, 2Pi}, {v, 0, 0.75}, Mesh -> None, PlotStyle -> {Blue, Red, Directive[Purple, Opacity[1]]}]{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, AxesLabel -> {x, y}, PlotLabel -> r == u], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, FrameLabel -> {x, y}, PlotLabel -> r == u + v]}对每个曲线或区域提供一个交互的 Tooltip:
{ParametricPlot[Evaluate[Table[Tooltip[{i Cos[u], i Sin[u]}, i], {i, 1, 3}]], {u, 0, 2Pi}],
ParametricPlot[Evaluate[Table[Tooltip[{(v + i) Cos[u], (v + i)Sin[u]}, i], {i, 1, 3}]], {u, 0, 2Pi}, {v, 0, 0.75}, Mesh -> None]}{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> 20], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> {20, 5}]}{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PlotStyle -> Thick, Mesh -> 20, MeshShading -> {Red, Orange, Yellow}], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> {20, 5}, MeshShading -> {{Red, Yellow}, {Pink, Orange}}]}ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PlotStyle -> Thick, ColorFunction -> Function[{x, y, u}, Hue[u / (2Pi)]], ColorFunctionScaling -> False]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> False, ColorFunction -> Function[{x, y, u, v}, Hue[u / (2Pi)]], ColorFunctionScaling -> False]ParametricPlot[{Sin[3t + Pi / 2], Sin[t]}, {t, 0, 2Pi}, Mesh -> True, GridLines -> Automatic, PlotTheme -> "Scientific", PlotLegends -> {"Lissajous Curve"}]ParametricPlot[{t Cos[t], t Sin[t]}, {t, 0, 2Pi}, ScalingFunctions -> {"Reverse", None}]ParametricPlot[{v Cos[u], v Sin[u]}, {u, 0, 2Pi}, {v, 0, 10}, ScalingFunctions -> {None, None, "Log", None}, ...]ParametricPlot[{v Cos[u], v Sin[u]}, {u, 0, 2Pi}, {v, 0, 10}, ScalingFunctions -> {None, None, None, "Log"}, ...]选项 (88)
BoundaryStyle (3)
ParametricPlot[{(u + v)Cos[u], (u + v)Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, BoundaryStyle -> Red, Mesh -> None]BoundaryStyle 应用到 RegionFunction 切割的区域上:
ParametricPlot[{(u + v)Cos[u], (u + v)Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, BoundaryStyle -> Red, RegionFunction -> Function[{x, y, u, v}, Sin[5u] > 0], Mesh -> None]BoundaryStyle 并不一个应用到 Exclusions 分割的空洞:
ParametricPlot[{(v + Floor[u])Cos[u], (v + Floor[u])Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, BoundaryStyle -> Red, Mesh -> None]ColorFunction (5)
Table[ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, ColorFunction -> Function[{x, y, u}, i], PlotLabel -> i, PlotStyle -> Thick], {i, {Hue[x], Hue[y], Hue[u]}}]Table[ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, ColorFunction -> Function[{x, y, u, v}, i], PlotLabel -> i], {i, {Hue[u], Hue[v]}}]{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, ColorFunction -> "DarkRainbow"], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, ColorFunction -> "DarkRainbow"]}ColorFunction 较 PlotStyle 有更高的优先级:
{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, ColorFunction -> "DarkRainbow", PlotStyle -> Directive[Red, Thick]], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, ColorFunction -> "DarkRainbow", PlotStyle -> Directive[Red, Opacity[0.5]]]}ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, ColorFunction -> Function[{x, y, u}, If[u > Pi, Red, Green]], ColorFunctionScaling -> False, PlotStyle -> Thick]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, ColorFunction -> Function[{x, y, u}, If[u > Pi, Red, Green]], ColorFunctionScaling -> False]ColorFunctionScaling (2)
ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PlotStyle -> Thick, ColorFunction -> Function[{x, y, u}, Hue[u / (2Pi)]], ColorFunctionScaling -> False]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> False, ColorFunction -> Function[{x, y, u, v}, Directive[Hue[u / (2Pi)], Opacity[v]]], ColorFunctionScaling -> {True, True, False, True}]EvaluationMonitor (3)
Reap[ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 6Pi}, EvaluationMonitor :> Sow[u]];]//ShortReap[ParametricPlot[{(v + 1)u Cos[u], (v + 1)u Sin[u]}, {u, 0, 6Pi}, {v, 0.5, 1}, EvaluationMonitor :> Sow[{u, v}]];]//Shortdata = Reap[ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 6Pi}, EvaluationMonitor :> Sow[{u Cos[u], u Sin[u]}]] ][[-1, 1]];ListPlot[data ]data = Reap[ParametricPlot[{(v + 1)u Cos[u], (v + 1)u Sin[u]}, {u, 0, 6Pi}, {v, 0.5, 1}, EvaluationMonitor :> Sow[{(v + 1)u Cos[u], (v + 1)u Sin[u]}]] ][[-1, 1]];ListPlot[data ]Block[{k = 0}, ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 6Pi}, EvaluationMonitor :> k++];k]Block[{k = 0}, ParametricPlot[{(v + 1)u Cos[u], (v + 1)u Sin[u]}, {u, 0, 6Pi}, {v, 0.5, 1}, EvaluationMonitor :> k++];k]Exclusions (5)
ParametricPlot[{ Floor[u]Cos[u], Floor[u]Sin[u]}, {u, 0, 4Pi}]ParametricPlot[{v Floor[u]Cos[u], v Floor[u]Sin[u]}, {u, 0, 4Pi}, {v, 1, 3 / 2}, Mesh -> None, Axes -> None]ParametricPlot[{Tan[u], u}, {u, 0, 2Pi}, Exclusions -> {Cos[u] == 0}]ParametricPlot[{Mod[u, Pi / 10]Cos[u], Mod[u, Pi / 10]Sin[u]}, {u, 0, 2Pi}, Axes -> False, Exclusions -> Range[0, 2Pi, Pi / 10]]ParametricPlot[{Floor[u]Cos[u], Floor[u]Sin[u]}, {u, 0, 6Pi}, Exclusions -> None]ParametricPlot[{Abs[u], Floor[Tan[u]]}, {u, -2Pi, 2Pi}, Exclusions -> {Automatic, Cos[u] == 0}, PlotStyle -> Thick]ExclusionsStyle (3)
ParametricPlot[{u, Tan[u]}, {u, -2Pi, 2Pi}, ExclusionsStyle -> Dashed, Exclusions -> {Cos[u] == 0}]ParametricPlot[{u, Floor[u]}, {u, 0, 5}, ExclusionsStyle -> {Dashed, PointSize[Medium]}]ParametricPlot[{(v + Floor[u])Cos[u], (v + Floor[u])Sin[u]}, {u, 0, 2Pi}, {v, 0, 5}, ExclusionsStyle -> {None, Red}, Mesh -> None]LabelingSize (2)
ParametricPlot[Callout[{u Cos[u], u Sin[u]}, "parametric curve", {3, -3}], {u, 0, 2Pi}]ParametricPlot[Callout[{u Cos[u], u Sin[u]}, "parametric curve", {3, -3}], {u, 0, 2Pi}, LabelingSize -> 40]ParametricPlot[Callout[{u Cos[u], u Sin[u]}, [image], {3, -3}], {u, 0, 2Pi}]ParametricPlot[Callout[{u Cos[u], u Sin[u]}, [image], {3, -3}], {u, 0, 2Pi}, LabelingSize -> 60]MaxRecursion (2)
MaxRecursion 的每个层次将初始的网格自动划分为优化的网格:
Table[ ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 6Pi}, MaxRecursion -> i, Mesh -> All, Ticks -> None], {i, {0, 3, 6}}]Table[ ParametricPlot[{(v + 1)u Cos[u], (v + 1)u Sin[u]}, {u, 0, 6Pi}, {v, 0.5, 1}, MaxRecursion -> i, Mesh -> All, FrameTicks -> None], {i, {0, 1, 2}}]Mesh (5)
{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> Full], ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> All]}{ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> Full, Axes -> False], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> All, Axes -> False]}{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> 10], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> 10, Axes -> False]}ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> {20, 2}, Axes -> False]{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> {Range[0, 4Pi, Pi / 5]}], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> {Range[0, 4Pi, Pi / 5], 0}, Axes -> False]}{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> {{{3Pi / 4, PointSize[Medium]}, {11Pi / 4, Red}}}], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, MeshFunctions -> {#3&}, Axes -> False, Mesh -> {{{3Pi / 4, Thick}, {11Pi / 4, Red}}}]}MeshFunctions (3)
Table[ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, MeshFunctions -> {f}, Mesh -> 20], {f, {Function[{x, y, u}, x], Function[{x, y, u}, y], Function[{x, y, u}, u]}}]Table[ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, MeshFunctions -> {f}, Mesh -> 5, Axes -> None], {f, {Function[{x, y, u}, x], Function[{x, y, u, v}, y], Function[{x, y, u, v}, u], Function[{x, y, u, v}, v]}}]在
方向显示 5 条网格线 (红色),在
方向用 10 条网格线 (蓝色):
ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> {5, 10}, MeshFunctions -> {#1&, #2&}, MeshStyle -> {Directive[PointSize[Medium], Red], Blue}]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> {5, 10}, MeshFunctions -> {#1&, #2&}, MeshStyle -> {Directive[PointSize[Medium], Red], Blue}, Axes -> None]MeshShading (7)
{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> 15, MeshFunctions -> {#3&}, MeshShading -> {Red, Blue}, Mesh -> Automatic], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, MeshFunctions -> {#3&}, MeshShading -> {Red, Blue}, Mesh -> Automatic]}用 None 删除分段:
{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> 15, MeshFunctions -> {#3&}, MeshShading -> {Red, None}, Mesh -> Automatic], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, MeshFunctions -> {#3&}, MeshShading -> {Red, None}, Mesh -> Automatic]}MeshShading 可以和 PlotStyle 连用:
ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PlotStyle -> Thick, Mesh -> 15, MeshFunctions -> {#3&}, MeshShading -> {Red, Blue}, Mesh -> Automatic]MeshShading 在样式方面比 PlotStyle 有更高的优先级:
{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PlotStyle -> Green, Mesh -> 15, MeshFunctions -> {#3&}, MeshShading -> {Red, Blue}, Mesh -> Automatic], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, PlotStyle -> Green, MeshFunctions -> {#3&}, MeshShading -> {Red, Blue}, Mesh -> Automatic]}对于某些分段通过设置 MeshShading 为 Automatic 来使用 PlotStyle:
ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PlotStyle -> Directive[Thick, Yellow], Mesh -> 15, MeshFunctions -> {#3&}, MeshShading -> {Red, Automatic}, Mesh -> Automatic]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, PlotStyle -> Directive[Opacity[0.5], Yellow], MeshFunctions -> {#3&}, MeshShading -> {Red, Automatic}, Mesh -> Automatic]MeshShading 可以和 ColorFunction 连用:
ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PlotStyle -> Thick, ColorFunction -> Function[{x, y, u}, Hue[x]], Mesh -> 15, MeshFunctions -> {#3&}, MeshShading -> {StandardGray, Automatic}, Mesh -> Automatic]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, ColorFunction -> Function[{x, y, u, v}, Hue[x]], MeshFunctions -> {#3&}, MeshShading -> {StandardGray, Automatic}, Mesh -> Automatic]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, ColorFunction -> Function[{x, y, u, v}, Hue[x]], Mesh -> {30, 5}, MeshShading -> {{StandardGray, Automatic}, {None, Orange}}, Mesh -> Automatic]MeshStyle (4)
{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> 15], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> Automatic]}{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> 15, MeshFunctions -> {#1&}, MeshStyle -> Red, Mesh -> Automatic], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, MeshFunctions -> {#1&}, MeshStyle -> Red, Mesh -> Automatic]}{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> 15, MeshFunctions -> {#1&, #2&}, MeshStyle -> {Red, Blue}, Mesh -> Automatic], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, MeshFunctions -> {#1&, #2&}, MeshStyle -> {Red, Blue}, Mesh -> Automatic]}{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, Mesh -> 15, MeshFunctions -> {#1&}, MeshStyle -> Directive[PointSize[Large], Red], Mesh -> Automatic], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, MeshFunctions -> {#1&}, MeshStyle -> Directive[Thick, Red], Mesh -> Automatic]}PerformanceGoal (2)
Timing[ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PerformanceGoal -> "Quality"]]Timing[ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, PerformanceGoal -> "Quality"]]Timing[ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PerformanceGoal -> "Speed"]]Timing[ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, PerformanceGoal -> "Speed"]]PlotHighlighting (8)
当设置为默认的 PlotHighlightingAutomatic 时,绘图有交互式坐标标注:
ParametricPlot[{{u Cos[u], 2u Sin[u]}, {2 u Cos[u], u Sin[u]}}, {u, Pi, 4Pi}]用 PlotHighlightingNone 禁止整个绘图的突出显示:
ParametricPlot[{{u Cos[u], 2u Sin[u]}, {2 u Cos[u], u Sin[u]}}, {u, Pi, 4Pi}, PlotHighlighting -> None]用 Highlighted[…,None] 禁止一条曲线的突出显示:
ParametricPlot[{{u Cos[u], 2u Sin[u]}, Highlighted[{2 u Cos[u], u Sin[u]}, None]}, {u, Pi, 4Pi}]ParametricPlot[{{u Cos[u], 2u Sin[u]}, {2 u Cos[u], u Sin[u]}}, {u, Pi, 4Pi}, PlotHighlighting -> "Ball"]ParametricPlot[Highlighted[{2 u Cos[u], u Sin[u]}, Placed["Ball", -7]], {u, Pi, 4Pi}]ParametricPlot[{2 u Cos[u], u Sin[u]}, {u, Pi, 4Pi}, PlotHighlighting -> "Dropline"]ParametricPlot[Highlighted[{2 u Cos[u], u Sin[u]}, Placed["Dropline", 15]], {u, Pi, 4Pi}]ParametricPlot[{2 u Cos[u], u Sin[u]}, {u, Pi, 4Pi}, PlotHighlighting -> "XSlice"]ParametricPlot[Highlighted[{2 u Cos[u], u Sin[u]}, Placed["XSlice", 15]], {u, Pi, 4Pi}]ParametricPlot[{2 u Cos[u], u Sin[u]}, {u, Pi, 3.8Pi}, PlotHighlighting -> "YSlice"]ParametricPlot[{2 u Cos[u], u Sin[u]}, {u, Pi, 3.8Pi}, PlotHighlighting -> "XNearestPoint"]ParametricPlot[{2 u Cos[u], u Sin[u]}, {u, Pi, 3.8Pi}, PlotHighlighting -> {"XNearestPoint", <|"Style" -> Red|>}]ParametricPlot[{2 u Cos[u], u Sin[u]}, {u, Pi, 3.8Pi}, PlotHighlighting -> "XYLabel"]用 Callout 的选项改变标签的外观:
ParametricPlot[{2 u Cos[u], u Sin[u]}, {u, Pi, 3.8Pi}, PlotHighlighting -> {"XYLabel", <|"Appearance" -> "Corners", "CalloutMarker" -> "Circle"|>}]ParametricPlot[{2 u Cos[u], u Sin[u]}, {u, Pi, 3.8Pi}, PlotHighlighting -> {{"XNearestPoint", <|"Style" -> Red|>}, {"XYLabel", <|"Appearance" -> "Corners", "CalloutMarker" -> "Circle"|>}}]PlotLabels (6)
ParametricPlot[{{Sin[x], Cos[x + 0.5]}, {Sin[x + 0.5], Cos[x]}}, {x, 0, 2π}, PlotLabels -> {"label1", "label2"}]ParametricPlot[{{Sin[x], Cos[x + 0.5]}, {Sin[x + 0.5], Cos[x]}}, {x, 0, 2π}, PlotLabels -> Placed[{"label1", "label2"}, Above]]ParametricPlot[{{Sin[x], Cos[x + 0.5]}, {Sin[x + 0.5], Cos[x]}}, {x, 0, 2π}, PlotLabels -> {Placed["label1", Above], Placed["label2", Below]}]PlotLabels->"Expressions" 使用函数作为曲线标签:
ParametricPlot[{{Sin[x], Cos[x + 0.5]}, {Sin[x + 0.5], Cos[x]}}, {x, 0, 2π}, PlotLabels -> "Expressions"]ParametricPlot[{{Sin[x], Cos[x + 0.5]}, {Sin[x + 0.5], Cos[x]}}, {x, 0, 2π}, PlotLabels -> {Callout["label1", {Scaled[0.125], Above}], Callout["label2", {Scaled[0.85], Below}]}]Table[ParametricPlot[{{Sin[x], Cos[x + 0.5]}, {Sin[x + 0.5], Cos[x]}}, {x, 0, 2π}, PlotLabels -> Callout[{"label1", "label2"}, pos]], {pos, {After, Before}}]使用 None 不添加标签:
ParametricPlot[{{Sin[x], Cos[x + 0.5]}, {Sin[x + 0.5], Cos[x]}}, {x, 0, 2π}, PlotLabels -> {"label1", None}]PlotLegends (7)
ParametricPlot[{{2 Cos[t], Sin[t]}, {Cos[t], 2Sin[t]}}, {t, 0, 2Pi}]ParametricPlot[{{2 Cos[t], Sin[t]}, {Cos[t], 2Sin[t]}}, {t, 0, 2Pi}, PlotLegends -> "Expressions"]ParametricPlot[{{2 Cos[t], Sin[t]}, {Cos[t], 2Sin[t]}}, {t, 0, 2Pi}, PlotLegends -> Automatic]ParametricPlot[{{2 Cos[t], Sin[t]}, {Cos[t], 2Sin[t]}}, {t, 0, 2Pi}, PlotLegends -> {"one", "two"}]PlotLegends 自动选择 PlotStyle 数值:
ParametricPlot[{{2 Cos[t], Sin[t]}, {Cos[t], 2Sin[t]}}, {t, 0, 2Pi}, PlotStyle -> {Red, Blue}, PlotLegends -> Automatic]使用 Placed 来确定图例位置:
ParametricPlot[{{2 Cos[t], Sin[t]}, {Cos[t], 2Sin[t]}}, {t, 0, 2Pi}, PlotStyle -> {Red, Blue}, PlotLegends -> Placed[Automatic, Below]]ParametricPlot[{{2 Cos[t], Sin[t]}, {Cos[t], 2Sin[t]}}, {t, 0, 2Pi}, PlotStyle -> {Red, Blue}, PlotLegends -> Placed[Automatic, {0.5, 0.5}], Axes -> False]使用 LineLegend 来修改图例外观:
ParametricPlot[{{2 Cos[t], Sin[t]}, {Cos[t], 2Sin[t]}}, {t, 0, 2Pi}, PlotLegends -> LineLegend["Expressions", LegendFunction -> Frame]]PlotPoints (2)
Table[ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PlotPoints -> i, MaxRecursion -> 0], {i, {10, 15, 25, 50}}]Table[ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, PlotPoints -> i, MaxRecursion -> 0, Mesh -> None], {i, {10, 15, 25, 50}}]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, PlotPoints -> {50, 2}, MaxRecursion -> 0, Mesh -> None]PlotRange (2)
{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 10}, PlotRange -> 12],
ParametricPlot[{(u + v) Cos[u], (u + v) Sin[u]}, {u, 0, 10}, {v, 0, 1}, PlotRange -> 12]}ParametricPlot[{Exp[u] Cos[u], Exp[u] Sin[u]}, {u, 0, 10}]用 PlotRange 强调感兴趣的区域:
Table[ParametricPlot[{Exp[u] Cos[u], Exp[u] Sin[u]}, {u, 0, 10}, PlotRange -> pr], {pr, {10, 50, 250}}]PlotStyle (4)
Table[ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PlotStyle -> ps], {ps, {Red, Thick, Dashed, Directive[Red, Thick]}}]Table[ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, PlotStyle -> ps], {ps, {Red, Opacity[1], Opacity[0.3], Directive[Red, Opacity[1]]}}]ParametricPlot[Evaluate[Table[
{u Cos[u + i Pi / 2], u Sin[u + i Pi / 2]}, {i, 0, 3}]], {u, 0, 4Pi}]ParametricPlot[Evaluate[Table[
{(v + u)Cos[u + i Pi / 2], (v + u)Sin[u + i Pi / 2]}, {i, 0, 3}]], {u, 0, 4Pi}, {v, 0, 1}, Mesh -> None]ParametricPlot[Evaluate[Table[
{u Cos[u + i Pi / 2], u Sin[u + i Pi / 2]}, {i, 0, 3}]], {u, 0, 4Pi}, PlotStyle -> {Red, Blue, Purple, Orange}]ParametricPlot[Evaluate[Table[
{(v + u)Cos[u + i Pi / 2], (v + u)Sin[u + i Pi / 2]}, {i, 0, 3}]], {u, 0, 4Pi}, {v, 0, 1}, Mesh -> None, PlotStyle -> {Red, Blue, Purple, Orange}]PlotStyle 可以和 ColorFunction 连用:
{ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}, PlotStyle -> Thick, ColorFunction -> Function[{x, y, u}, Hue[u]]], ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, PlotStyle -> Opacity[0.3], ColorFunction -> Function[{x, y, u, v}, Hue[u]]]}PlotTheme (2)
ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, MeshFunctions -> {#3&}, PlotTheme -> "Business"]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, MeshFunctions -> {#3&}, PlotTheme -> "Business", PlotStyle -> StandardRed]RegionFunction (1)
ScalingFunctions (3)
默认情况下,ParametricPlot 使用线性刻度:
ParametricPlot[{u, Tan[u]}, {u, -2 Pi, 2 Pi}, AspectRatio -> 1]ParametricPlot[{u, Tan[u]}, {u, -2 Pi, 2 Pi}, AspectRatio -> 1, ScalingFunctions -> {Automatic, "SignedLog"}]用 ScalingFunctions 反转坐标轴的方向:
{ParametricPlot[{t Cos[t], t Sin[t]}, {t, 0, 20}], ParametricPlot[{t Cos[t], t Sin[t]}, {t, 0, 20}, ScalingFunctions -> {"Reverse", None}], ParametricPlot[{t Cos[t], t Sin[t]}, {t, 0, 20}, ScalingFunctions -> {"Reverse", "Reverse"}]}TextureCoordinateFunction (4)
ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> None, PlotStyle -> {Opacity[1], Texture[ExampleData[{"ColorTexture", "LightCherry"}]]}]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> None, TextureCoordinateFunction -> ({#1, #2}&), PlotStyle -> {Opacity[1], Texture[ExampleData[{"ColorTexture", "LightCherry"}]]}]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> None, TextureCoordinateFunction -> ({#1, #2}&), TextureCoordinateScaling -> False, PlotStyle -> {Opacity[1], Texture[ExampleData[{"ColorTexture", "LightCherry"}]]}]texture = ArrayPlot[{{1, 1, 1, 2, 1, 1}, {2, 0, 0, 2, 0, 0}, {2, 0, 0, 2, 0, 0}, {2, 1, 1, 1, 1, 1}, {2, 0, 0, 2, 0, 0}, {2, 0, 0, 2, 0, 0}}, ColorRules -> {1 -> Red, 2 -> Blue, 0 -> White}, Frame -> False, PlotRangePadding -> None, ImagePadding -> None, ImageSize -> 100]ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> None, TextureCoordinateScaling -> False, PlotStyle -> Texture[texture]]TextureCoordinateScaling (1)
texture = ArrayPlot[{{1, 1, 1, 2, 1, 1}, {2, 0, 0, 2, 0, 0}, {2, 0, 0, 2, 0, 0}, {2, 1, 1, 1, 1, 1}, {2, 0, 0, 2, 0, 0}, {2, 0, 0, 2, 0, 0}}, ColorRules -> {1 -> Red, 2 -> Blue, 0 -> White}, Frame -> False, PlotRangePadding -> None, ImagePadding -> None, ImageSize -> 100]Table[ParametricPlot[{(v + u) Cos[u], (v + u) Sin[u]}, {u, 0, 4Pi}, {v, 0, 5}, Mesh -> None, TextureCoordinateScaling -> s, PlotStyle -> Texture[texture], PlotLabel -> s], {s, {True, False}}]WorkingPrecision (2)
{ParametricPlot[{Cos[u], Sin[u + 10 ^ 20]}, {u, 0, 2Pi}, WorkingPrecision -> MachinePrecision],
ParametricPlot[{v Cos[u], v Sin[u + 10 ^ 20]}, {u, 0, 2Pi}, {v, 1, 2}, WorkingPrecision -> MachinePrecision]}{ParametricPlot[{Cos[u], Sin[u + 10 ^ 20]}, {u, 0, 2Pi}, WorkingPrecision -> 20],
ParametricPlot[{v Cos[u], v Sin[u + 10 ^ 20]}, {u, 0, 2Pi}, {v, 1, 2}, WorkingPrecision -> 20]}应用 (9)
ParametricPlot[{3u + 4, u + 2}, {u, 0, 1}]ParametricPlot[{Cos[u], Sin[u]}, {u, 0, 2Pi}]ParametricPlot[{2Cos[u], Sin[u]}, {u, 0, 2Pi}]ParametricPlot[{Cos[u], Sin[u]}, {u, Pi / 4, 5Pi / 4}]ParametricPlot[{2Cos[u], Sin[u]}, {u, Pi / 4, 5Pi / 4}]ParametricPlot[{u, v}, {u, 1, 3}, {v, 3, 4}]ParametricPlot[{v Cos[u], v Sin[u]}, {u, 0, 2Pi}, {v, 0, 1}]ParametricPlot[{2v Cos[u], v Sin[u]}, {u, 0, 2Pi}, {v, 0, 1}]ParametricPlot[{v Cos[u], v Sin[u]}, {u, 0, Pi / 3}, {v, 0, 1}]ParametricPlot[{v Cos[u], v Sin[u]}, {u, 0, 2Pi}, {v, 1 / 2, 1}]ParametricPlot[{v Cos[u], v Sin[u]}, {u, 0, Pi / 3}, {v, 1 / 2, 1}]Table[ParametricPlot[Evaluate@RotationTransform[θ][{2Cos[u], Sin[u]}], {u, 0, 2Pi}, PlotRange -> 2], {θ, {0, Pi / 6, Pi / 3, Pi / 2}}]ParametricPlot[Evaluate@RotationTransform[θ][{2Cos[u], Sin[u]}], {u, 0, 2Pi}, {θ, 0, Pi / 2}, Mesh -> Automatic]{x, y} = {Cos[u], Sin[u]};
x ^ 2 + y ^ 2//SimplifyParametricPlot[Evaluate[{x, y}], {u, 0, 2Pi}, Mesh -> 100]{x, y} = {(2u/1 + u^2), (1 - u^2/1 + u^2)};
x ^ 2 + y ^ 2//SimplifyParametricPlot[Evaluate[{x, y}], {u, -10, 10}, PlotRange -> All, Mesh -> 100]GraphicsGrid@Table[ParametricPlot[{Sin[m u], Sin[n u]}, {u, 0, 2Pi}], {n, 3}, {m, 3}]h = 1 / (s - 1 / 2) ^ 2 /. s -> Exp[I ω]ParametricPlot[{Re[h], Im[h]}, {ω, 0, 2Pi}]关于 Lotka–Volterra predator-prey 方程解的相空间:
NDSolve[{y'[t] == y[t](x[t] - 1), x'[t] == x[t](2 - y[t]), x[0] == 1, y[0] == 2.7}, {x, y}, {t, 0, 10}]ParametricPlot[Evaluate[{x[t], y[t]} /. First[%]], {t, 0, 10}]Table[ParametricPlot[{Re[(u + I v)^n], Im[(u + I v)^n]}, {u, -2, 2}, {v, -2, 2}, MeshStyle -> {Orange, Green}, PlotRange -> 2, Mesh -> Automatic], {n, {1, 1 / 2, 1 / 3}}]ParametricPlot[With[{z = u + I v}, {Re[z + 1 / z], Im[z + 1 / z]}], {u, -1 / 2, 1 / 2}, {v, -1 / 2, 1 / 2}, PlotRange -> 5, Mesh -> Automatic]t01 = Composition[RotationTransform[θ1], TranslationTransform[{1, 0}]];t12 = Composition[RotationTransform[θ2], TranslationTransform[{1, 0}]];t02 = Simplify @ Composition[t01, t12]ParametricPlot[Evaluate[t02[{0, 0}]], {θ1, Pi / 3, 2Pi / 3}, {θ2, -Pi / 2, Pi / 2}, PlotRange -> {{-2, 2}, {0, 2}}, Mesh -> Automatic]属性和关系 (7)
Plot 是曲线 ParametricPlot 的特例:
{Plot[Sin[x ^ 2], {x, 0, 5}], ParametricPlot[{x, Sin[x ^ 2]}, {x, 0, 5}, AspectRatio -> 1 / GoldenRatio]}PolarPlot 是曲线 ParametricPlot 的特例:
{PolarPlot[u, {u, 0, 4Pi}],
ParametricPlot[{u Cos[u], u Sin[u]}, {u, 0, 4Pi}]}对于数据用 ListPlot 和 ListLinePlot:
{ListLinePlot[Table[{Cos[u], Sin[3u]}, {u, 0, 2Pi, 0.1}]], ParametricPlot[{Cos[u], Sin[3u]}, {u, 0, 2Pi}, AspectRatio -> 1 / GoldenRatio]}对于隐式曲线和区域用 ContourPlot 和 RegionPlot:
{ContourPlot[x ^ 2 + y ^ 2 == 1, {x, -1, 1}, {y, -1, 1}], RegionPlot[1 < x ^ 2 + y ^ 2 < 4, {x, -2, 2}, {y, -2, 2}]}对于对数图形用 LogPlot、LogLinearPlot 和 LogLogPlot:
LogLogPlot[Abs[10 ^ 2 / ((I ω) ^ 2 + 100)], {ω, 10 ^ 0, 10 ^ 5}]对于函数和参数曲面用 Plot3D 和 ParametricPlot3D:
Plot3D[(x ^ 2 + y ^ 2)Exp[-(x ^ 2 + y ^ 2)], {x, -2, 2}, {y, -2, 2}]ParametricPlot3D[{-2 Cos[u] Cos[v] ^ 3, -2 Cos[v] ^ 2 Sin[u], 2 Tan[v]}, {u, 0, 2Pi}, {v, -1, 1}]对于圆柱坐标和球坐标用 RevolutionPlot3D 和 SphericalPlot3D:
RevolutionPlot3D[-(ϕ + Sin[r]), {r, 0, 4Pi}, {ϕ, 0, 2Pi}]SphericalPlot3D[1 + 1 / 5Sin[3v], {u, 0, Pi}, {v, 0, 2Pi}]可能存在的问题 (1)
ParametricPlot[Table[{Sin[u], Sin[2n u]}, {n, 2}], {u, 0, 2Pi}]用 Evaluate 获得曲线的明确列表:
ParametricPlot[Evaluate[Table[{Sin[u], Sin[2n u]}, {n, 2}]], {u, 0, 2Pi}]技术笔记
-
▪
- 参数图形
历史
1988年引入 (1.0) | 在以下年份被更新:2007 (6.0) ▪ 2010 (8.0) ▪ 2012 (9.0) ▪ 2014 (10.0) ▪ 2019 (12.0) ▪ 2022 (13.1) ▪ 2023 (13.3) ▪ 2026 (15.0)
文本
Wolfram Research (1988),ParametricPlot,Wolfram 语言函数,https://reference.wolfram.com/language/ref/ParametricPlot.html (更新于 2026 年).
CMS
Wolfram 语言. 1988. "ParametricPlot." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2026. https://reference.wolfram.com/language/ref/ParametricPlot.html.
APA
Wolfram 语言. (1988). ParametricPlot. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/ParametricPlot.html 年
BibTeX
@misc{reference.wolfram_2026_parametricplot, author="Wolfram Research", title="{ParametricPlot}", year="2026", howpublished="\url{https://reference.wolfram.com/language/ref/ParametricPlot.html}", note=[Accessed: 30-October-2026]}
BibLaTeX
@online{reference.wolfram_2026_parametricplot, organization={Wolfram Research}, title={ParametricPlot}, year={2026}, url={https://reference.wolfram.com/language/ref/ParametricPlot.html}, note=[Accessed: 30-October-2026]}