5 溫溼度繪圖模組

現在我們要來試用看看法蘭斯的溫溼度繪圖模組。

  1. 從他的 說明檔 中找到這個擴充模組的 範例連結,點進去以後,會看到以下的畫面
    從這個畫面中,可以看到他使用的是 Fly 的板子,並且是直接由溫溼度感測器來取值。

  2. 我們在上一個課程單元中,已經說明如何使用 Smart 板來蒐集溫溼度資料,並把資料存放到 Google 試算表中。如果我們已經有之前的記錄,就可以直接從 Google 試算表取值,並利用這些記錄的值來繪圖;如果沒有的話,也可以仿照上圖的方式,直接量測並進行繪圖。這邊我們會直接使用已經記錄的檔案來處理,檔案內容可參考 這個連結。這個表中每筆資料相隔 10 秒。

  3. 先看一下做出來的範例,點選 這裡,應該會出現下面的圖:

    打開網頁互動區域,選擇「顯示文字」,然後執行看看。接下來我們分段講解。

  4. 程式一開始,先做一些設定,包括設定試算表網址及工作表,接著設定時間間隔(每隔多少秒要畫一個資料點),設定變數 i 用來做為讀取試算表的列數,一開始為 1 (欄位列),設定 Dataset 為空字串。

  5. 接著先在其他地方撰寫更新資料的流程 (副程式),流程名稱取名為「更新Data」,加上參數 row (表示要讀取的列)。流程中,主要先讀取試算表欄位 1, 4, 5,分別為時間、溫度與溼度。接著把讀取到的資料,連接成字串,並加上分號結尾。

  6. 現在回到主程式,把後面的流程補上。

    a. 注意在表中,每筆資料的間隔是 10 秒,所以我們每次要跳的列數為 timeInterval/10。
    b. 從表中讀取新的資料,並加到 Dataset 裡面。
    c. 設定 PlotData 為 Dataset 中最新的 20 筆資料。
    d. 繪製溫溼度圖表。



練習

  1. 試著調整不同的參數,重新繪圖。(也可以試看看不選取若干筆資料,而是用全部已讀取到的資料作圖)
  2. 試著只畫出溫度或溼度,不要兩者都畫。(如何處理,有何發現?)
  3. 試著畫出時間和光照度的圖形。(如何處理,有何發現?)