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]]