[學習計畫] [簡易控制] Python 基本運算與繪圖_1
題目:
建立一個程式,使用者輸入振幅與週期,畫出由sin cos tan 的運算結果組成的圖片,程式有儲存輸入設定值的功能,可以紀錄使用者輸入的結果為txt檔。
使用功能介紹:
(1)
Input():
程式中使用範例:
set_amplitude = float(input('Inputamplitube: '))
set_frequency = float(input('Input frequency: '))
-
input(inf): 讀取使用者輸入的資料。讀入的資料為字串型式。
其中inf 為顯示的提示訊息。 - float(): 將型式轉換為浮點數。
(2) Numpy 三角函數:
程式中使用範例:
sample_time = np.linspace(0, 2*np.pi,1000)
sin_result = set_amplitude*np.sin(set_frequency*sample_time)
cos_result = set_amplitude*np.cos(set_frequency*sample_time)
tan_result = set_amplitude*np.tan(set_frequency*sample_time)
- np.sin(x)、np.cos(x)、np.tan(x): x 可以放置陣列資料,其中的數值為徑度。
- set_amplitude: 使用者調整振幅大小用。
- set_frequency: 調整頻率用。
(3) matplotlib.pyplot:
程式中使用範例:
import matplotlib.pyplot as plt
fig, [[sin_fig, cos_fig],[tan_fig,null_fig]] = \
plt.subplots(ncols=2, nrows=2, sharex=False, sharey=False,\
figsize=(10,20),gridspec_kw={'height_ratios': [1, 2]})
- plt.subplots(): 用來建立子圖。
- ncols 設定列數。
- nrows 設定行數。
- sharex=False 不共用X軸參數。
- sharey=False 不共用Y軸參數。
- figsize=(10,20) 調整顯示的圖片大小。
- gridspec_kw={'height_ratios':
[1, 2]}):
子圖中上半部圖片與下半部圖片的高度比為1:2。 - fig: 產生主圖。
- [[sin_fig, cos_fig],[tan_fig, null_fig]]: 定義四個建立的子圖名稱。
sin_fig.plot(sample_time, sin_result)
sin_fig.set_title('sin')
sin_fig.set_xlim(0,2*np.pi)
sin_fig.set_ylabel('amplitude')
sin_fig.grid(True)
- plot(X, Y) X 放置X軸的參數,Y 放置Y軸的參數。
- set_title 設定子圖主題。
- set_xlim 設定X軸顯示的範圍。
- set_ylabel設定Y軸座標名稱。
- grid(True) 圖片中加入網格。
留言
張貼留言