第2章图形绘制
平面图形
空间图形:曲线与曲面
2.1 曲线与曲面表示法
2.1.1 平面曲线表示法
(1)直角坐标显式(简称显式):y=f(x)
(2)直角坐标隐式(简称隐式):F(x,y)=0
(3)参数式:x=x(t),y=y(t)
(4)极坐标式:ρ=ρ(θ)
(5)列表式(又称数据形式,或称离散点形式)
(6)图形式(画出曲线的图形)
2.1.2 空间曲线表示法
(1)参数形式
x=x(t),y=y(t),z=z(t)
(2)交截形式
f(x,y,z)=0∩φ(x,y,z)=0
这是用两张曲面的交线来表示空间曲线。在理论研究与实际应用中,常常是通过引入参数t将交截式转化为参数式来讨论问题的。
2.1.3 曲面表示法
(1)直角坐标显式(简称显式):z=f(x,y)
(2)直角坐标隐式(简称隐式):F(x,y,z)=0
(3)参数形式:x=x(u,v),y=y(u,v),z=z(u,v)
(4)数据形式:即是将曲面上的点表示为
x={xi},y={yj},z={zij} (i=1,2,…,m;j=1,2,…,n)
的形式,其中xi与yj为向量x与y中的元素,zij为矩阵z中的元素?
(5)图形形式(画出曲面的图形)
曲面表示的上述5种形式在一定条件下也是可以互相转化的,在实际问题中用得最多的是(1),(3),(5)三种形式?
2.2 平面曲线的绘制法
2.2.1 显式
Plot[f(x),{x,x1,x2},可选项]
Plot[{f1(x),f2(x),…},{x,x1,x2},可选项]
Note:原式用InputForm查看;不连续图形可能有失真。
2.2.2 参数式
ParametricPlot[{x(t),y(t)},{t,t1,t2},可选项]
ParametricPlot[{{x1(t),y1(t)},{x2(t),y2(t)},…},{t,t1,t2},可选项]
2.2.3隐式
ImplicitPlot[F[x,y]==0,{x,x1,x2},可选项]
Note:先调入程序包< < 2.2.4极坐标式 PolarPlot[ρ(θ),{ θ, θ1, θ2}] Note:先调入程序包< < 2.2.5数据形式 ListPlot[{{x1,y1},{ x2,y2},。。。,{ xn,yn}},可选项] Note:常用选项 PlotJoined→True ListPlot[{y1, y2, … }] x={x1,x2, …} y={y1,y2, …} M=Transpose[{x,y}] 2.3 平面图形的可选项 查看选项:Options[Plot] 2.3.1可选项列表 1.PlotRange Automatic,即系统根据情况自定?作图的范围,可取{x1,x2},也可取{y1,y2},以及{{x1,x2},{y1,y2}},若取All,则表示画出函数值的全部图形 2.AspectRatio 1/GoldenRatio,即y∶x=1∶1.6180 图形的高宽比,可以为AspectRatio指定一个任何其他的数?GoldenRatio≈1.6180 3.Axes 4.PlotLabel 5.AxesLabel 6.Ticks 7.Frame 8.GridLines 9.PlotPoints 25 画图时基本的最少取点数 12.PlotStyle Automatic自动用黑色实线作图选用什么颜色?线型作图 注:PlotStyle→GrayLevel[i],i为灰度比值,0≤i≤1,0为黑色,1为白色; RGBColor[r,g,b],红,绿,蓝三色强度,0≤r,g,b≤1; Thickness[t],t为线条宽度,以占整个图的宽度的比来量度; Dashing[{d1,d2,…}],用实虚线段序列画图 2.3.2可选项举例 【例1】绘制参数圆x=acost,y=asint,a=3,0≤t≤2π的图形? 【例2】绘制参数曲线x=8sin2t,y=8cos5t,0≤t≤2π,在曲线上不画坐标轴,但要加上边框,并在曲线上方加上标记. 【例3】绘制隐函数(x2+y2)3-16(x4+y4)+14=0在-6≤x≤6上的图形,加上边框并加网格线? 【例4】绘制隐函数x4-y4+xy=0在-1≤x≤1上的图形,要求加上坐标轴标记。【例5】给定函数y1=sinx与y2=cosx及区间0≤x≤2π (1)在0≤x≤2π上用彩色线画出y1=sinx的图形; (2)在0≤x≤2π上用实虚线画出y2=cosx的图形; (3)在0≤x≤2π上,将上述两曲线画在同一坐标平面内? 【例6】已知y3=sintanx-tansinx,试观察y3在区间[-π,π],[1,2]及[1.5,1.6]上的图形? 2.3.3平面图形的重现与组合 用Mathematica系统绘制图形的过程大致可分为两步,第一步是构造图形的基本元素,比如计算图形上的基本样点,把样点连接成折线等;第二步是将构造好的图形显示出来,同时包含若干附加的东西, 比如加上坐标轴?网格线?边框等?每次图形绘制完毕之后,图形的全部信息都将被保存下来,当用户需要再次画出这些图形时,只需调 用重现函数Show即可,不必再去重复原来的第一步和第二步?如果 对原来的图形感到还有些不满意,例如范围不合适,比例不合适或是 坐标轴不合适时,那么只须对可选项中第一类相应的参数值作些调整即可,不必再去重新构造图形的基本元素?这样做可以有效地节省系统和用户的时间? Show函数的功能之一是显示已经做好的图形? Show函数的功能之二是能够将已经做好的多个图形显示在同一坐标系里,实现多个图形的组合。 Zhou si Note: 同一坐标系阵列形式输出GraphicsArray[二重图形列表] 【例7】绘制函数y=sinx在-π≤x≤π上的图形? 【例8】在同一区间[0,2π]上给定函数 y1=Sinx,y2=Sin(x-1),y3=Sin(x+1),y4=Sin2x,要求用彩色线(红蓝线)画出y1曲线,用灰度线(黑白线)画出y2曲线,用宽条线画出y3曲线,用实虚线(点划线)画出y4曲线,然后将y1,y2,y3,y4组合在同一坐标系里? 2.4空间曲线的绘制法 参数形式空间曲线绘图函数的调用格式如下: ParametricPlot3D[{x(t),y(t),z(t)},{t,t1,t2},可选项] 【例1】绘制柱面螺旋线x=4cost,y=4sint,z=1.5t,在0≤t≤8π上的图形? 【例2】绘制锥面螺旋线x=t·cost,y=t·sint,z=1.5t在0≤t≤8π上的图形? 2.5 曲面的绘制法 曲面的表示通常采用显式z=f(x,y),隐式F(x,y,z)=0或参数式 x=x(u,v),y=y(u,v),z=z(u,v)?单值曲面一般用显式,多值曲面(含闭合曲面)一般用隐式或参数式? 2.5.1 显式 显式曲面z=f(x,y)绘图函数的调用格式如下: Plot3D[f(x,y),{x,x1,x2},{y,y1,y2},可选项] 【例1】绘制函数z=x4+y4-18(x2+y2)在区域-4≤x≤4,-4≤y≤4上的图形?【例2】绘制函数z=e-(x*x+y*y)在-2≤x≤2,-2≤y≤2上的图形? 2.5.2 隐式 隐式曲面F(x,y,z)=0绘图函数的调用格式如下: ContourPlot3D[F(x,y,z),{x,x1,x2},{y,y1,y2},{z,z1,z2},可选项] 【例3】绘制单位球面x2+y2+z2=1的图形? 【例4】绘制椭球面x2+4y2+9z2=36的图形。 【例5】绘制环面(x2+y2+z2+R2-r2)2-4R2(x2+y2)=rR 的图形?其中R 为大圆半径,r 为小圆半径?比如可取R=6,r=3? 2.5.3 参数式 参数曲面x=x(u,v),y=y(u,v),z=z(u,v)绘图函数的调用格式如下: ParametricPlot3D[{x(u,v),y(u,v),z(u,v)},{u,u1,u2},{v,v1,v2},可选项] 【例8】绘制螺旋面x=ucosv,y=usinv,z=au+bv,在范围-3≤u≤3,0≤v≤2π上图形,可取a=0,b=1? 2.5.4 数据形式 如果已知某矩形区域x1≤x≤x2,y1≤y≤y2,网格点(i,j)上曲面的高度值zij,则可以用ListPlot3D函数绘制出此数据曲面的图形? 【例11】已知4×5个zij值 {0,1,4,9,16},{1,2,5,10,17},{2,3,6,11,18},{3,4,7,12,19},试绘制该曲面的图形? Note:x和y值为行号与列号 2.5.5 空间图形的可选项 查看:Options[Plot3D] Options[ParametricPlot3D] 可选项名称默认值含义 PlotPoints {15,15} 在给定的矩形域上x方向与y方向上的取点数 PlotRange Automatic 图形显示范围,可取{z1,z2},或 {x1,x2},{y1,y2},{z1,z2} Boxed True 是否给图形加上一个立体框,以增强图形的立体感 BoxRatios x∶y∶z=1∶1∶0.4 立体框在3个方向上的长度比,可任意指定 ViewPoint {x,y,z}= {1.3,-2.4,2} 将立体图投影到平面上时使用的观察点 PlotLabel None 图形的名称标注,如果需要,可用任意字符串作为图形名称 Mesh True 曲面上是否画上网格 HiddenSurface True 曲面被遮挡住的部分是否消隐 PlotColor True 是否显示出彩色,如果原来就是黑白图形,则此可 选项不起作用 Shading True 在曲面上是否涂色(涂阴影),如果去掉阴影,则图 形完全白色,只能看到网格线,如果再去掉网格 线,则什么也看不到了 LightSources 光源位置在曲面右边设置照明光源,使用格式是{{光源位 置},{光源光色}} 45°处,三个点光源分别是红?绿?蓝 Lighting False 是否打开已经设置好的光源,一旦打开光源,灯光即照射 在曲面上,便会产生反射效果,从而使曲面呈现出色彩 【例13】绘制函数z=sin(x-y)在区域-3≤x≤3,-4≤y≤4上的图形? 2.5.6 空间图形的重现与组合 对于空间图形(包括空间曲线与曲面)也可以完全类似地利用Show函数进行图形的重现与组合. 【例18】绘制回转面x=r,y=e-(r·cos(4r))^2cost,z=e-(r·cos(4r))^2sint在-0.7≤r≤1,0 ≤t≤2π上的图形? 【例20】绘制函数z1=0.2(x+y)+0.1与z2=0.5(x2-y2)在区域-1≤x≤1,-1≤ y≤1上的图形,并将此二图形进行组合? Note:DisplayFunction->Identity 不显示图形 DisplayFunction->$DisplayFunction 显示图形 Zhou er 2.5.7 二曲面相交与空间图形在坐标面上的投影 两曲面S1与S2相交的图形,除了可利用Show函数的组合功能实现外,还可利用曲面参数方程作图函数ParametricPlot3D来实现? 【例21】绘制二曲面z1=0.2(x+y)+0.1与z2=0.5(x2-y2)在区域-3≤x≤3,-3 ≤y≤3上相交部分的图形? 空间图形(包括空间曲线与曲面)在坐标面上的投影,可利用Shadow函数来实现? 【例22】试将锥面螺旋线x=t cost,y=t sint,z=2t,0≤t≤8π投影到三个坐标平面上? 【例23】试求二曲面z1=0.3xy+2与z2=x2+y2的相交部分在坐标面上的投影? 2.5.8 等高线及密度图 (略)