A simple and lightweight http server to visualize measurements
Project description
plot_server
A lightweight http plot server written in python to visualize data locally. Storing only a fixed number of data points (100 per default) per measurement to keep the resources low.
Empty plot | Selectable data |
---|---|
Quickstart
Install the package via pip
pip3 install http-plot-server
Adapt the settings in param.cfg to your needs and run
plot_server --cfg=param.cfg
or run the module as
python3 -m plot_server --cfg=param.cfg
and open your browser with the specified port, per default:
http://localhost:8080
You can also leave out the cfg flag and default values will be used.
Command line options
--host
: specifies the host (default: 0.0.0.0), can belocalhost
to avoid access from outside--port
: specifies the port the server runs on (default: 8080)--max-points
: specifies the maximum number of data points the plot server stores per measurement (default: 100)--cfg
: specifies the path to a config file containing the above command line arguments (seemisc/param.cfg
)
How to feed data to the plot_server
You can add data points to the plot_server by a simple http POST request including the json payload
{
"tag": "Measurement Name",
"value": 1234,
"unit": "W",
"ts": 1649859909
}
Where unit
and ts
are optional. If ts
is not provided, then the time is used at which the post request is made. If unit
is not provided, then the plot_server simply displays "Value" on the y-axis.
An example program feeding the plot_server is included in this repository and named misc/data_injector.py
.
A short python snippet would look like this
import requests
data = {
"tag": "Measurement Name",
"value": 1234,
"unit": "W",
"ts": 1649859909
}
url = "http://localhost:8080"
requests.post(url,json=data)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for http_plot_server-0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e78ce45cf14a584c2cf607b5e39653bbee174c666d8cf7b48413df841dc74d36 |
|
MD5 | 5fae661f9e0e936179db3b2e27a36248 |
|
BLAKE2b-256 | 1a2f15ae1f54c885f2db664daeac3107476e649555eddbcb07aa20f9a9a5d5f8 |