SlideShare a Scribd company logo
1 of 12
函數畫圖
1
簡要 python 學習講義
畫圖步驟 (一)
1. 使用 pylab 套件畫圖:import pylab
2. 設定函式:
def f(x) :
return pylab.sin(2*x) + pylab.sqrt(x)
def g(x) :
return x**3 - 2*x + pylab.cos(x/3)
def h(x) :
return pylab.sin( exp(x) )
2國立中央大學數學系
畫圖步驟 (二)
def s(x) :
return pylab.log(x) + 2 * pylab.log10(x)
def t(x) :
return pylab.sin( pylab.sqrt( abs(5*x) ) ) )
def u(x) :
return pylab.maximum(pylab.sin(x),pylab.cos(x)**2)
def v(x) :
return pylab.minimum(pylab.sin(x),pylab.cos(2*x))
3國立中央大學數學系
畫圖步驟 (三)
3. 設定畫圖區間 [a,b] 與點數 n :
a , b , n = 0 , 10 , 100
a , b , n = -pylab.pi , pylab.pi , 100
pi = pylab.pi
a , b , n = -pi , pi , 100
4. 產生所有 x 座標點於 xs:
xs = pylab.linspace(a,b,n)
5. 產生所有 y 座標於 ys:
ys = f(xs)
ys = g(xs)
4國立中央大學數學系
畫圖步驟 (四)
6. 輸入 xs 與 ys 畫函數圖:
pylab.plot(xs,ys)
pylab.plot(xs,f(xs))
7. 設定圖形屬性:
pylab.grid():顯示背景格線
pylab.title(’bar’):產生圖形標頭 bar
pylab.xlabel("X"):X 軸字串
pylab.ylabel("Y"):Y 軸字串
8. 儲存圖形於檔案:
pylab.savefig(’foo.jpg’)
pylab.savefig(’foo.png’)
9. 顯示圖形於螢幕:
pylab.show()
5國立中央大學數學系
函數畫圖 : 簡單版 (一)
6國立中央大學數學系
函數畫圖 : 簡單版 (二)
7國立中央大學數學系
import pylab
# 設定函式
def f(x) :
return pylab.sin(x) + pylab.cos(2*x)
# 設定 x 範圍 [a,b] 之間,n 為座標點數
a , b , n = 0 , 2*pylab.pi , 100
## 在 [a,b] 之間產生 n 個點存到 xs
xs = pylab.linspace(a,b,n)
## 畫圖:(xs,f(xs))
pylab.plot(xs,f(xs))
## 格線
pylab.grid()
## 儲存圖形
pylab.savefig(’sfn.png’)
## 螢幕顯示圖形
pylab.show()
 簡單版本:
函數畫圖 : 詳細版 (一)
8國立中央大學數學系
函數畫圖 : 詳細版 (二)
9國立中央大學數學系
import pylab
# 設定函式
def f(x) :
return pylab.sin(x) + pylab.cos(2*x)
pi = pylab.pi
# 設定 x 範圍 [a,b] 之間,n 為座標點數
a , b , n = 0 , 2*pi , 100
## 在 [a,b] 之間產生 n 個點存到 xs
xs = pylab.linspace(a,b,n)
## ys 為所有 xs 的 y 值
ys = f(xs)
## 畫紙底色為 white
pylab.figure(facecolor=’w’)
## 畫圖
pylab.plot(xs,ys)
## 顯示背景格線
pylab.grid()
# 設定 X 與 Y 軸
pylab.xlabel("X")
pylab.ylabel("Y")
# 設定標頭
pylab.title("sin(x)+cos(2x)")
# 儲存檔案
pylab.savefig(’plot_fn.png’)
## 螢幕顯示圖形
pylab.show()
 詳細版本:
10國立中央大學數學系
函數畫圖 : 習題 1
 畫 f(x) = max(|x sin(x)|,|x cos(x)|) 與
g(x) = min(|x sin(x)|,|x cos(x)|),
x ∈ [-2 ,2 ]
11國立中央大學數學系
函數畫圖 : 習題 2
 畫 f(x) = ,x ∈ [0, 10 ]
12
函數畫圖 : 習題 3
國立中央大學數學系

More Related Content

What's hot

TQC+ 程式語言 Python 08:字串處理
TQC+ 程式語言 Python 08:字串處理TQC+ 程式語言 Python 08:字串處理
TQC+ 程式語言 Python 08:字串處理neochen2701
 
Deuterium-labeled compounds
Deuterium-labeled compoundsDeuterium-labeled compounds
Deuterium-labeled compoundsIsamu Katsuyama
 
経験過程
経験過程経験過程
経験過程hoxo_m
 
パターン認識 04 混合正規分布
パターン認識 04 混合正規分布パターン認識 04 混合正規分布
パターン認識 04 混合正規分布sleipnir002
 

What's hot (6)

TQC+ 程式語言 Python 08:字串處理
TQC+ 程式語言 Python 08:字串處理TQC+ 程式語言 Python 08:字串處理
TQC+ 程式語言 Python 08:字串處理
 
Deuterium-labeled compounds
Deuterium-labeled compoundsDeuterium-labeled compounds
Deuterium-labeled compounds
 
経験過程
経験過程経験過程
経験過程
 
画像認識4
画像認識4画像認識4
画像認識4
 
パターン認識 04 混合正規分布
パターン認識 04 混合正規分布パターン認識 04 混合正規分布
パターン認識 04 混合正規分布
 
Checkpoint Overview
Checkpoint OverviewCheckpoint Overview
Checkpoint Overview
 

Similar to P127 135 new

ncuma_函數微分計算.pptx
ncuma_函數微分計算.pptxncuma_函數微分計算.pptx
ncuma_函數微分計算.pptxNCU MCL
 
函數微分_範例.pptx
函數微分_範例.pptx函數微分_範例.pptx
函數微分_範例.pptxmclmath
 
ncuma_pylab.pptx
ncuma_pylab.pptxncuma_pylab.pptx
ncuma_pylab.pptxNCU MCL
 
ncuma_Taylor 多項式.pptx
ncuma_Taylor 多項式.pptxncuma_Taylor 多項式.pptx
ncuma_Taylor 多項式.pptxNCU MCL
 
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫Justin Lin
 
ncuma_SymPy符號運算套件.pptx
ncuma_SymPy符號運算套件.pptxncuma_SymPy符號運算套件.pptx
ncuma_SymPy符號運算套件.pptxNCU MCL
 

Similar to P127 135 new (20)

Ppt 127-135
Ppt 127-135Ppt 127-135
Ppt 127-135
 
Ppt 127-135
Ppt 127-135Ppt 127-135
Ppt 127-135
 
ncuma_函數微分計算.pptx
ncuma_函數微分計算.pptxncuma_函數微分計算.pptx
ncuma_函數微分計算.pptx
 
函數微分_範例.pptx
函數微分_範例.pptx函數微分_範例.pptx
函數微分_範例.pptx
 
Ppt 136-140
Ppt 136-140Ppt 136-140
Ppt 136-140
 
Ppt 138-142
Ppt 138-142Ppt 138-142
Ppt 138-142
 
Ch5
Ch5Ch5
Ch5
 
ncuma_pylab.pptx
ncuma_pylab.pptxncuma_pylab.pptx
ncuma_pylab.pptx
 
Appendix B 教學
Appendix B 教學Appendix B 教學
Appendix B 教學
 
Sym py edu
Sym py eduSym py edu
Sym py edu
 
Appendix B
Appendix BAppendix B
Appendix B
 
ncuma_Taylor 多項式.pptx
ncuma_Taylor 多項式.pptxncuma_Taylor 多項式.pptx
ncuma_Taylor 多項式.pptx
 
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
Java SE 8 的 Lambda 連鎖效應 - 語法、風格與程式庫
 
Ch11 範例
Ch11 範例Ch11 範例
Ch11 範例
 
Ppt 78-100
Ppt 78-100Ppt 78-100
Ppt 78-100
 
Ppt 78-100
Ppt 78-100Ppt 78-100
Ppt 78-100
 
ncuma_SymPy符號運算套件.pptx
ncuma_SymPy符號運算套件.pptxncuma_SymPy符號運算套件.pptx
ncuma_SymPy符號運算套件.pptx
 
Ch5 教學
Ch5 教學Ch5 教學
Ch5 教學
 
Ch5
Ch5Ch5
Ch5
 
Taylor example
Taylor exampleTaylor example
Taylor example
 

More from hungchiayang1 (20)

Exercise 1 3
Exercise 1 3Exercise 1 3
Exercise 1 3
 
Python p.193 197
Python p.193 197Python p.193 197
Python p.193 197
 
Python differential equation
Python differential equationPython differential equation
Python differential equation
 
化學系 python 習題
化學系 python 習題化學系 python 習題
化學系 python 習題
 
化學系 python 練習
化學系 python 練習化學系 python 練習
化學系 python 練習
 
化學系 python 教學
化學系 python 教學化學系 python 教學
化學系 python 教學
 
Ppt 120-126
Ppt 120-126Ppt 120-126
Ppt 120-126
 
Ppt 151-151
Ppt 151-151Ppt 151-151
Ppt 151-151
 
Ppt 136-136
Ppt 136-136Ppt 136-136
Ppt 136-136
 
Ppt 143-143
Ppt 143-143Ppt 143-143
Ppt 143-143
 
Ppt 137-137
Ppt 137-137Ppt 137-137
Ppt 137-137
 
Ppt 150-150
Ppt 150-150Ppt 150-150
Ppt 150-150
 
Ppt 26-50
Ppt 26-50Ppt 26-50
Ppt 26-50
 
Ppt 145-149
Ppt 145-149Ppt 145-149
Ppt 145-149
 
Ppt 174-174
Ppt 174-174Ppt 174-174
Ppt 174-174
 
Ppt 1-25
Ppt 1-25Ppt 1-25
Ppt 1-25
 
Ppt 144-144
Ppt 144-144Ppt 144-144
Ppt 144-144
 
Ppt 152-155
Ppt 152-155Ppt 152-155
Ppt 152-155
 
Ppt 156-156
Ppt 156-156Ppt 156-156
Ppt 156-156
 
Ppt 166-166
Ppt 166-166Ppt 166-166
Ppt 166-166
 

P127 135 new

  • 2. 畫圖步驟 (一) 1. 使用 pylab 套件畫圖:import pylab 2. 設定函式: def f(x) : return pylab.sin(2*x) + pylab.sqrt(x) def g(x) : return x**3 - 2*x + pylab.cos(x/3) def h(x) : return pylab.sin( exp(x) ) 2國立中央大學數學系
  • 3. 畫圖步驟 (二) def s(x) : return pylab.log(x) + 2 * pylab.log10(x) def t(x) : return pylab.sin( pylab.sqrt( abs(5*x) ) ) ) def u(x) : return pylab.maximum(pylab.sin(x),pylab.cos(x)**2) def v(x) : return pylab.minimum(pylab.sin(x),pylab.cos(2*x)) 3國立中央大學數學系
  • 4. 畫圖步驟 (三) 3. 設定畫圖區間 [a,b] 與點數 n : a , b , n = 0 , 10 , 100 a , b , n = -pylab.pi , pylab.pi , 100 pi = pylab.pi a , b , n = -pi , pi , 100 4. 產生所有 x 座標點於 xs: xs = pylab.linspace(a,b,n) 5. 產生所有 y 座標於 ys: ys = f(xs) ys = g(xs) 4國立中央大學數學系
  • 5. 畫圖步驟 (四) 6. 輸入 xs 與 ys 畫函數圖: pylab.plot(xs,ys) pylab.plot(xs,f(xs)) 7. 設定圖形屬性: pylab.grid():顯示背景格線 pylab.title(’bar’):產生圖形標頭 bar pylab.xlabel("X"):X 軸字串 pylab.ylabel("Y"):Y 軸字串 8. 儲存圖形於檔案: pylab.savefig(’foo.jpg’) pylab.savefig(’foo.png’) 9. 顯示圖形於螢幕: pylab.show() 5國立中央大學數學系
  • 6. 函數畫圖 : 簡單版 (一) 6國立中央大學數學系
  • 7. 函數畫圖 : 簡單版 (二) 7國立中央大學數學系 import pylab # 設定函式 def f(x) : return pylab.sin(x) + pylab.cos(2*x) # 設定 x 範圍 [a,b] 之間,n 為座標點數 a , b , n = 0 , 2*pylab.pi , 100 ## 在 [a,b] 之間產生 n 個點存到 xs xs = pylab.linspace(a,b,n) ## 畫圖:(xs,f(xs)) pylab.plot(xs,f(xs)) ## 格線 pylab.grid() ## 儲存圖形 pylab.savefig(’sfn.png’) ## 螢幕顯示圖形 pylab.show()  簡單版本:
  • 8. 函數畫圖 : 詳細版 (一) 8國立中央大學數學系
  • 9. 函數畫圖 : 詳細版 (二) 9國立中央大學數學系 import pylab # 設定函式 def f(x) : return pylab.sin(x) + pylab.cos(2*x) pi = pylab.pi # 設定 x 範圍 [a,b] 之間,n 為座標點數 a , b , n = 0 , 2*pi , 100 ## 在 [a,b] 之間產生 n 個點存到 xs xs = pylab.linspace(a,b,n) ## ys 為所有 xs 的 y 值 ys = f(xs) ## 畫紙底色為 white pylab.figure(facecolor=’w’) ## 畫圖 pylab.plot(xs,ys) ## 顯示背景格線 pylab.grid() # 設定 X 與 Y 軸 pylab.xlabel("X") pylab.ylabel("Y") # 設定標頭 pylab.title("sin(x)+cos(2x)") # 儲存檔案 pylab.savefig(’plot_fn.png’) ## 螢幕顯示圖形 pylab.show()  詳細版本:
  • 10. 10國立中央大學數學系 函數畫圖 : 習題 1  畫 f(x) = max(|x sin(x)|,|x cos(x)|) 與 g(x) = min(|x sin(x)|,|x cos(x)|), x ∈ [-2 ,2 ]
  • 11. 11國立中央大學數學系 函數畫圖 : 習題 2  畫 f(x) = ,x ∈ [0, 10 ]
  • 12. 12 函數畫圖 : 習題 3 國立中央大學數學系