EBC Exercise 38 Logging to Excel

From eLinux.org
Revision as of 07:01, 11 October 2018 by Yoder (talk | contribs) (Initial Page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

thumb‎ Embedded Linux Class by Mark A. Yoder


Here are instructions on how to log data to an Excel spreadsheet from Python.

Create a new Excel Spreadsheet

Create a new spreadsheet:

  • Sign into your OneDrive account.
  • Select New:Excel workbook.
  • Give it a meaningful name
  • Enter some column labels

Blank Excel Sheet

  • Note the sheetID in the path

SheetID

Get Credentials

Go to the class repo and change to the sheets directory

bone$ cd exercises/iot/google/sheets

If you are using JavaScipt, go to https://developers.google.com/sheets/api/quickstart/nodejs and follow step 1.

If you are using Python, got to {https://developer.microsoft.com/en-us/graph/quick-start?platform=option-Python https://developer.microsoft.com/en-us/graph/quick-start?platform=option-Python] and follow step 2.

  • Click the Get an app ID and secret button
  • Click the Add an app button
  • Give the app a name. I used 'Logging Data to Excel'
  • Click Let us help you get started

Either way put the credentials.json file in the sheets directory.

Run the example

JavaScript

  • Edit demo.js and change the sheetID string to the string you noted above.
  • Load the API
bone$ npm install googleapis
  • Then, run the example on your Bone. The arguments are the values to be logged on the sheet.
bone$ ./demo.js 3.14 10

The first time you will have to paste a URL into your browser and paste a string back to the Bone.

Python

  • Edit demo.py and change the sheetID string to the string you noted above.
  • Load the API
bone$ pip3 install --upgrade google-api-python-client oauth2client
  • Run

Then, run the example on your Bone. The arguments are the values to be logged on the sheet.

bone$ ./demo.py --noauth_local_webserver 3.14 10

The first time you will have to paste a URL into your browser and paste a string back to the Bone. You can leave off the --noauth_local_webserver after the first time.

Plot the Data

Go to your Google sheet and the new data, and a time stamp should be there.

  • Select the A column and select Format:Number:Date time

Formatting the Date

  • Select all the columns and click Insert chart

Insert chart

  • Select Line chart
  • Select Use row 1 as headers
  • Select Use column A as labels

Chart formatting options

Your data should be plotted. Try running your script again and the chart will update.




thumb‎ Embedded Linux Class by Mark A. Yoder