您的位置首页百科知识

Mathematica绘制函数图像—极坐标绘图

Mathematica绘制函数图像—极坐标绘图

的有关信息介绍如下:

Mathematica绘制函数图像—极坐标绘图

在学习极坐标的时候,我们注意到,有很多有趣的极坐标方程能绘制出很多漂亮的曲线。这里,结合Mathematica那强大的科学计算能力,玩一下极坐标的绘图。

Mathematica绘制极坐标图形的命令函数是PolarPlot,格式如下:

只有一个极坐标方程:

PolarPlot[r(θ),{θ,θmin,θmax}] ——产生一个半径为 r(θ) 的极坐标图形,作为角度θ 的函数。

多个极坐标方程,用{}包起来:

PolarPlot[{f1(θ),f2(θ),...},{θ,θmin,θmax}]——产生一个曲线的极坐标,显示径函数 f1(θ),f2(θ),....

这里绘制一个“三叶草”曲线,其极坐标方程是:

r(x)=1+cos(3x)+1.5×[sin(3x)]^2

绘图的Mathematica代码是:

PolarPlot[1 + Cos[3 x] + 1.5 Sin[3 x]^2, {x, 0, 2 Pi}]

x的取值范围是0到2π。图形如下:

再绘制一条“蝴蝶”曲线,它的极坐标方程是:

e^(cosx)- 2cos(4 x) + [sin(x/12)]^5

代码是:

PolarPlot[Exp[Cos[x]] - 2 Cos[4 x] + Sin[x/12]^5, {x, 0, 20 Pi}]

要注意了,这里x的取值范围是0到20π,不是0到2π。如果代码改为:

PolarPlot[Exp[Cos[x]] - 2 Cos[4 x] + Sin[x/12]^5, {x, 0, 2 Pi}]

图形就变得有点单调!

我以前也画过这条曲线,参考下面这篇经验。在Desmos里,没有指定自变量的取值范围。

26怎么使用Desmos绘制函数图形

把两类“三叶玫瑰线”画在一起,这里不用Show,而是把sin(3x)和cos(3x)放在PolarPlot后面的{}里,代码如下:

PolarPlot[{Sin[3 x], Cos[3 x]}, {x, 0, 99 Pi}]

代码不多解释。Mathematica会自动地赋予两条曲线以不同的颜色。

PlotStyle给出曲线的外形模样,包括颜色、粗细程度、虚实线、透明度等等的内容。给出一条“三叶玫瑰线”,要求曲线是蓝色的粗线,图形是500×500像素的大小,代码如下:

PolarPlot[Sin[3 x + 90 Degree], {x, 0, 2 Pi}, PlotStyle -> {Blue, Thick}, ImageSize -> {500, 500}]

把上图曲线的粗度要量化为0.02,可以用Thickness。代码如下:

PolarPlot[Sin[3 x + 90 Degree], {x, 0, 2 Pi}, PlotStyle -> {Blue, Thickness[0.02]}, ImageSize -> {500, 500}]

把两种“三叶玫瑰线”的线粗都变为0.02,且分别为红色和绿色。注意代码里的列表之间是前后对应的:

PolarPlot[{Sin[3 x], Cos[3 x]}, {x, 0, 2 Pi},

PlotStyle -> {{Green, Thickness[0.02]}, {Red, Thickness[0.02]}},

ImageSize -> {500, 500}]

对于“三叶玫瑰线”的不同的曲线类型,用列表加以比较:

Table[PolarPlot[Cos[3 \[Theta]],{\[Theta],0,2 Pi},

PlotStyle->ps],

{ps,{Red,Thick,Dashed,Directive[Red,Thick]}}]

运行以后,是这样:

把“蝴蝶”曲线变成红色,粗度0.03,看看效果如何!

代码是:

PolarPlot[Exp[Cos[x]] - 2 Cos[4 x] + Sin[x/12]^5, {x, 0, 2 Pi},

PlotStyle -> {Red, Thickness[0.03]}]

PolarPlot[Exp[Cos[x]] - 2 Cos[4 x] + Sin[x/12]^5, {x, 0, 20 Pi},

PlotStyle -> {Red, Thickness[0.03]}]

第一副还凑合,第二幅就没法看了,所以,曲线的粗度不能太任性。

把“三叶草”画成绿色:

PolarPlot[1 + Cos[3 x] + 1.5 Sin[3 x]^2, {x, 0, 2 Pi},

PlotStyle -> {Green, Thickness[0.05]}, PlotRange -> All]

还挺漂亮的!

用PlotRange聚焦特定的区域来查看图形。

以“蝴蝶”曲线为例,用列表的方式查看不同的角度:

Table[PolarPlot[Exp[Cos[x]] - 2 Cos[4 x] + Sin[x/12]^5, {x, 0, 20 Pi},

PlotStyle -> {Red, Thickness[0.001]},

PlotRange -> q], {q, {10, 3.9, 1, 0.1}}]

运行结果如下:

用ColorFunction对“蝴蝶”曲线的不同点加上不同颜色!代码如下:

PolarPlot[Exp[Cos[x]] - 2 Cos[4 x] + Sin[x/12]^5, {x, 0, 20 Pi},

PlotStyle -> Thick, ColorFunction -> Function[{x, y, t, r}, Hue[x]]