[學習計畫] [簡易控制] 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) 圖片中加入網格。
        參考資料
        [2] matplotlib.pyplot.subplots

        留言

        這個網誌中的熱門文章

        ROS_建地圖_Octomap[1]:安裝及測試

        C#_練習_[3]:對發票程式