二維空間中的作圖

1. 描繪點座標:

下面的指令可以在座標上標出 (1, 2), (1.5, 2.5), (2, 3) 這三個點座標。

> plot([[1,2],[1.5,2.5],[2,3]],style=point,symbol=circle);

[Maple Plot]

2. 畫出函數的曲線圖:

下面的指令可以畫出 sin(x) 在 0 ~ 4 pi 之間的圖形。

> f:=x->sin(x);

f := sin

> plot(f(x),x=0..4*Pi);

[Maple Plot]

3. 畫出給定數學式的曲線圖:

欲畫出 sin(x) 在 0 ~ 4 pi 之間的圖形有以下兩種寫法。

> eq:=sin(x):
   plot(eq,x=0..4*Pi);

[Maple Plot]

> plot(sin(x),x=0..4*Pi);

[Maple Plot]

下圖是 tan(x) 在 - pi ~ pi 之間的圖形。由於 tan(x) 在接近 -pi/2 pi/2 的地方會趨近於 infinity -infinity,不可能真的畫出來,所以我們給它一個界線,將縱軸限定在 -100 ~ 100 之間。

> plot(tan(x),x=-Pi..Pi,view=-100..100);

[Maple Plot]

由於 plot 是「描點作圖」,即 Maple 執行這個指令時,會先找出很多滿足這個數學式的點座標,再以直線將它們連接起來,所以顯示的是一個連續曲線圖。但是實際上 tan(x) 在 -pi/2 pi/2 這兩點上不連續(discontinuous),所以要加上 "discont = true" 。

> plot(tan(x),x=-Pi..Pi,view=-100..100,discont=true);

[Maple Plot]

4. 在同一個座標軸上畫兩個以上的函數(或數學式):

將 exp(x) 與 ln(x) 在 [0.5, 2.5] 之間的圖形畫在同一個圖表中:

  1. 定義 "G_exp" 為 exp(x) 在 [0.5, 2.5] 之間的圖形;"G_ln" 為 ln(x) 在 [0.5, 2.5] 之間的圖形。

  2. 用 "with(plots):" 這個指令來載入 "plots" 封包(package),這個封包內含許多繪圖指令,如下一步驟所使用的 "display" 指令,其他還有 "implicitplot", "spacecurve", "animate"…等(可參考 plots 的說明檔),如果沒有載入 "plots" 封包就無法使用這些指令。

  3. " display(G_exp, G_ln);" 這個指令會在同一個圖中展示 exp(x) 與 ln(x) 的圖形。

> G_exp:=(plot(exp(x),x=0.5..2.5,color=red)):
>
G_ln:=(plot(ln(x),x=0.5..2.5,color=blue,thickness=2)):
>
with(plots):
>
display(G_exp,G_ln);

[Maple Plot]

> plot({exp(x),ln(x)},x=0.5..2.5,color=[blue,red]);

[Maple Plot]

5. 隱函數的作圖:

圓方程式 x^2+y^2 = 1 的圖形可以用 "implicitplot" 這個指令畫出。x^2+y^2 = 1 中的 x y 顯然不是函數關係,但是它卻包含了兩個函數 y = sqrt(1-x^2) y = -sqrt(1-x^2),所以我們稱 x^2+y^2 = 1為定義 y x 關係之隱函數(implicity function)。

> with(plots):
>
implicitplot(x^2+y^2=1,x=-1..1,y=-1..1,scaling=constrained);

[Maple Plot]

6. 參數方程式的曲線作圖(parametric curves):parametric equation

我們也可以將圓方程式以參數方程式表示再用 "plot" 指令作圖。
如上例中的單位圓,其參數方程式為:
x = cos(t), y = sin(t) ,其中 t 是介於 0 至 2 Pi之間。

> plot([cos(t),sin(t),t=0..2*Pi],scaling=constrained);

[Maple Plot]

三維空間中的作圖:

1. 空間曲線(Space curves):

"spacecurve" 指令可以用來畫空間曲線。
下圖是參數方程式
x = t, y = t^2, z = t^3 t 在 -1 與 1 之間的圖形。 以滑鼠點選畫好的圖形,視窗上方就會出現一排按鈕,試試看它們有什麼作用。在圖形上按住滑鼠左鍵拖曳也可以旋轉座標軸,從各種角度來看這條曲線。

> spacecurve([t,t^2,t^3,t=-1..1],color=blue,axes=normal);

[Maple Plot]

2. 曲面(Surfaces):

"plot3d" 這個指令可以畫三維空間中的曲面。 下圖是拋物面 z = x^2+y^2 x y 都介於 -1 與 1 之間的的圖形。 試試從不同角度來看這個圖形。

> plot3d(x^2+y^2,x=-1..1,y=-1..1,axes=boxed);

[Maple Plot]

z 不是 x , y 的函數,如橢圓錐面 z^2 = x^2+y^2 ,我們可以用指令 "implicitplot3d" 來作圖,但是別忘了要先載入 plots 封包,如下:

> with(plots):
   implicitplot3d(z^2=x^2+y^2,x=-1..1,y=-1..1,z=-1..1);

[Maple Plot]

下圖是 z = x^2/(x^2+y^2) x , y 都介於 -1 與 1 之間的圖形。

> plot3d(x^2/(x^2+y^2),x=-1..1,y=-1..1);

[Maple Plot]

我們也可以將同樣的數學式寫成極座標的形式,再用 "plot3d" 來作圖。

如下我們令 x = r*cos(theta) , y = r*sin(theta)再將它們代入 g(x,y) = x^2/(x^2+y^2)

> x:=r*cos(theta): y:=r*sin(theta):
>
g:=(x,y)->x^2/(x^2+y^2):
   plot3d([x,y,g(x,y)], r=0.1..1.5, theta=0..2*Pi, view=0..1, grid=[15,30], axes=normal);

[Maple Plot]

3. 繪製等高線(等值線)(Contour)圖:

下圖是雙曲拋物面 z = x^2-y^2 的等高線圖,利用指令 "contourplot" 畫出。

> restart;
>
with(plots):
   contourplot(x^2-y^2, x=-1..1, y=-1..1, contours=15, grid=[35,35], coloring=[yellow,red], filled=true);

[Maple Plot]

動畫:

使用動畫指令之前,也要先載入 "plots" 封包。
" animatecurve" 指令可以讓你看到 Maple 在平面上繪製曲線的過程。
下面是參數方程式
x = t^2-2*t, y = t+1 t 介於 0 與 4 之間的圖形:

>
with(plots):
   animatecurve([t^2-2*t,t+1,t=0..4],scaling=constrained);

[Maple Plot]

點選畫好的圖形,視窗上方會出現一排按鈕,試試看這些按鈕有什麼功能。
"animate" 這個指令可以製作一個動畫顯示函數圖形隨著參數改變而有不同的變化。
如下圖顯示
y = a*x+1 這條線隨著 a 由 -1 逐漸增大至 1 而改變。

> animate(a*x+1,x=-1..1,a=-1..1);

[Maple Plot]

"animate3d" 這個指令的作用與 "animate" 義不多,只是圖形由二度空間的曲線擴展成三度空間的曲面。

> animate3d(cos(t*x)*sin(t*y),x=-Pi..Pi, y=-Pi..Pi,t=1..2);

[Maple Plot]