From 080e122b959d8dd8091bc22cb35dbb2cdd8d67bb Mon Sep 17 00:00:00 2001 From: mattbk Date: Thu, 16 Nov 2017 03:12:41 +0000 Subject: [PATCH] Aaaaaaaah. --- .gitignore | 1 + pi_temp.db | Bin 95232 -> 0 bytes pi_temp.py | 110 ++++++++++++++++++++--------------------- pi_temp_logger.py | 2 +- templates/history.html | 15 +++--- 5 files changed, 63 insertions(+), 65 deletions(-) create mode 100644 .gitignore delete mode 100755 pi_temp.db diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a9b2577 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +pi_temp.db diff --git a/pi_temp.db b/pi_temp.db deleted file mode 100755 index 91b20d6a48c749d353f73a80d35b82bbc4708cfc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 95232 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 diff --git a/pi_temp.py b/pi_temp.py index aecc7d3..75744bc 100755 --- a/pi_temp.py +++ b/pi_temp.py @@ -85,60 +85,60 @@ def history(): print "rendering history.html with: %s, %s, %s" % (timezone, from_date_str, to_date_str) # Create new record tables so that datetimes are adjusted back to the user browser's time zone. -# time_series_adjusted_temperatures = [] -# time_series_adjusted_humidities = [] -# time_series_temperature_values = [] -# time_series_humidity_values = [] -# -# for record in temperatures: -# local_timedate_series = arrow.get(record[0], "YYYY-MM-DD HH:mm").to(timezone) -# time_series_adjusted_temperatures.append(local_timedate_series.format('YYYY-MM-DD HH:mm')) -# time_series_temperature_values.append(round(record[2],2)) -# -# for record in humidities: -# local_timedate_series = arrow.get(record[0], "YYYY-MM-DD HH:mm").to(timezone) -# time_series_adjusted_humidities.append(local_timedate_series.format('YYYY-MM-DD HH:mm')) #Best to pass datetime in text -# so that Plotly respects it -# time_series_humidity_values.append(round(record[2],2)) -# -# -# temp = Scatter( -# x=time_series_adjusted_temperatures, -# y=time_series_temperature_values, -# name='Temperature' -# ) -# hum = Scatter( -# x=time_series_adjusted_humidities, -# y=time_series_humidity_values, -# name='Humidity', -# yaxis='y2' -# ) -# -# data = Data([temp, hum]) -# -# layout = Layout( -# title="Temperature and Humidity", -# xaxis=XAxis( -# type='date', -# autorange=True -# ), -# yaxis=YAxis( -# title='Fahrenheit', -# type='linear', -# autorange=True -# ), -# yaxis2=YAxis( -# title='Percent', -# type='linear', -# autorange=True, -# overlaying='y', -# side='right' -# ) -# -# ) -# -# fig = Figure(data=data, layout=layout) -# graphJSON = json.dumps(fig, cls=plotly.utils.PlotlyJSONEncoder) + time_series_adjusted_temperatures = [] + time_series_adjusted_humidities = [] + time_series_temperature_values = [] + time_series_humidity_values = [] + + for record in temperatures: + local_timedate_series = arrow.get(record[0], "YYYY-MM-DD HH:mm").to(timezone) + time_series_adjusted_temperatures.append(local_timedate_series.format('YYYY-MM-DD HH:mm')) + time_series_temperature_values.append(round(record[2],2)) + + for record in humidities: + local_timedate_series = arrow.get(record[0], "YYYY-MM-DD HH:mm").to(timezone) + time_series_adjusted_humidities.append(local_timedate_series.format('YYYY-MM-DD HH:mm')) #Best to pass datetime in text + #so that Plotly respects it + time_series_humidity_values.append(round(record[2],2)) + + + temp = Scatter( + x=time_series_adjusted_temperatures, + y=time_series_temperature_values, + name='Temperature' + ) + hum = Scatter( + x=time_series_adjusted_humidities, + y=time_series_humidity_values, + name='Humidity', + yaxis='y2' + ) + + data = Data([temp, hum]) + + layout = Layout( + title="Temperature and Humidity", + xaxis=XAxis( + type='date', + autorange=True + ), + yaxis=YAxis( + title='Fahrenheit', + type='linear', + autorange=True + ), + yaxis2=YAxis( + title='Percent', + type='linear', + autorange=True, + overlaying='y', + side='right' + ) + + ) + + fig = Figure(data=data, layout=layout) + graphJSON = json.dumps(fig, cls=plotly.utils.PlotlyJSONEncoder) return render_template("history.html", timezone = timezone, temp = time_adjusted_temperatures, @@ -149,7 +149,7 @@ def history(): query_string = request.query_string, #This query string is used #by the Plotly link hum_items = len(humidities), - #graphJSON=graphJSON, + graphJSON=graphJSON, ) def get_records(): diff --git a/pi_temp_logger.py b/pi_temp_logger.py index e529182..17091aa 100755 --- a/pi_temp_logger.py +++ b/pi_temp_logger.py @@ -39,7 +39,7 @@ import sys import Adafruit_DHT def log_values(sensor_id, temp, hum): - conn=sqlite3.connect('/home/pi/Documents/pi-temp/pi-temp.db') #It is important to provide an + conn=sqlite3.connect('/home/pi/Documents/pi-temp/pi_temp.db') #It is important to provide an #absolute path to the database #file, otherwise Cron won't be #able to find it! diff --git a/templates/history.html b/templates/history.html index 2c4a1f5..eb3fcfa 100755 --- a/templates/history.html +++ b/templates/history.html @@ -229,9 +229,7 @@ chart.draw(data, options); } - - - - + +- \ No newline at end of file