-
Notifications
You must be signed in to change notification settings - Fork 22
datavisualisation
The pigrow is able to capture large amounts of data which we can use to monitor our grow, to help understand all this data there are various visualisation tools.
Read current system information, logs, or folders and give a concise text output of useful information which can be incorporated into the gui's system panel, read vis SSH, included in datawalls or run directly on the pi itself.
Take data read from the logs and use it to create various types of graphs which can show the information in various ways such as simple line graphs of the values, rate of change, with day-night (or lamp on/off) changes overlaid, etc.
These are .png images constructed with the output of datawalls and graph modules or through their own processing of logs to create a visual display of important information in an easy to view display.
Datawalls are made using two components, the datawall preset which contains the settings used to load log files, create graphs, and read info modules. This information is then handed to the datawall module which is a python script that performs any required calculations, data processing or other tasks then constructs an image placing all the elements into position - typically this uses the PIL image module but any method is acceptable as long as it creates an image file with the supplied name.
This image file can then be uploaded or displayed wherever is appropriate.
Hosting a webpage on the pi lets you view it on the local network (wan hosting coming soon), to host the webpage we need to have running;
Pigrow/scripts/autorun/host_webpage folder=/home/<username>/Pigrow/webpage/basic
the folder should be set to the path of the folder containing the website you want to host, this includes three subfolders;
templates - contains index.html which is the page to display. static - folder for images, JavaScript, CSS, etc handler - contains handler.py and any associated files
There's currently only one example webpage basic which demonstrates the use of the basic handler.py which allows running info modules, reading recent log entries and creating datawalls.