Dweepy to record temperature data

From Sensors in Schools
Revision as of 23:59, 23 February 2024 by EdmondLascaris (talk | contribs) (Created page with "= Get all data = <syntaxhighlight lang="python"> import dweepy url = dweepy.get_latest_dweet_for('MPPS-Tiny-House-11-bundoora') print(url) </syntaxhighlight> = Get temperature data = <syntaxhighlight lang="python"> import dweepy url = dweepy.get_latest_dweet_for('MPPS-Tiny-House-11-bundoora') print(url) dict = url[0] internalTemp = dict['content'][('intTemp')] print(f'The internal temperature is {internalTemp}') externalTemp = dict['content'][('extTemp')] prin...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Get all data

import dweepy

url = dweepy.get_latest_dweet_for('MPPS-Tiny-House-11-bundoora')
print(url)

Get temperature data

import dweepy

url = dweepy.get_latest_dweet_for('MPPS-Tiny-House-11-bundoora')
print(url)

dict = url[0]

internalTemp = dict['content'][('intTemp')]
print(f'The internal temperature is {internalTemp}')

externalTemp = dict['content'][('extTemp')]
print(f'The outside temperature is {externalTemp}')

datetime = dict['content'][('date')]


Plot data

import dweepy
import pandas as pd
import plotly.express as px
#https://github.com/paddycarey/dweepy - Reference

url = dweepy.get_latest_dweet_for('MPPS-Tiny-House-11-bundoora')
print(url)

dict = url[0]

internalTemp = dict['content'][('intTemp')]
print(f'The internal temperature is {internalTemp}')

externalTemp = dict['content'][('extTemp')]
print(f'The outside temperature is {externalTemp}')

datetime = dict['content'][('date')]

# Saving data
data = str(datetime) + "," + str(internalTemp) + "," + \
       str(externalTemp) + "\n"

print(f'The data is =  {data}')
         
f = open('/home/pi/Tiny_House_11/tiny_house_11_data.txt','a')
f.write(data)
f.close()
print("The data has been saved")


# Step 2: Read the data from the text file into a Pandas DataFrame
data = pd.read_csv('/home/pi/Tiny_House_11/tiny_house_11_data.txt')

# Step 3: Create a Plotly figure with two scatter plots
fig = px.scatter(data, x='datetime', y=['intTemp', 'extTemp'],
                 labels={'datetime': 'Date and Time', 'value': 'Temperature (°C)'},
                 title='Internal vs. External Temperature')

# Step 4: Customize the plot layout
fig.update_layout(xaxis_title='Date and Time', yaxis_title='Temperature (°C)')

# Step 5: Save the plot as an HTML file
fig.write_html('/home/pi/Tiny_House_11/temperature_plot_tiny_house_11.html')

print("Temperature 11 plot saved as temperature_plot.html")