cs:highcharts
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Předchozí verze | |||
| — | cs:highcharts [Neznámé datum] (aktuální) – upraveno mimo DokuWiki (Neznámé datum) 127.0.0.1 | ||
|---|---|---|---|
| Řádek 1: | Řádek 1: | ||
| + | ====== Interaktivní grafové výstupy - Highcharts ====== | ||
| + | Highcharts je JavaScriptová knihovna pro kreslení grafů v prohlížeči. Pro použití se stavebnicí MLAB vznikl software, který data získaná pomoci python knihovny [[cs: | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | === Instalace === | ||
| + | Pro správné spuštění musíte mít nainstalovanou knihovnu [[cs: | ||
| + | |||
| + | sudo apt-get install python-h5py python-tornado | ||
| + | | ||
| + | Samotný software si stáhnete z [[https:// | ||
| + | |||
| + | git clone https:// | ||
| + | |||
| + | === Použití === | ||
| + | |||
| + | Pro spuštění samotného softwaru musí být vytvořena pravidla pro získávání dat. Tyto pravidla jsou vyřešena pomocí pythonovského skriptu. | ||
| + | |||
| + | Skript může vypadat takto: [[https:// | ||
| + | |||
| + | import logging | ||
| + | import sys | ||
| + | import time | ||
| + | from pymlab import config | ||
| + | from src import mv | ||
| + | Naimportování potřebných knihoven. | ||
| + | |||
| + | class dewpoint(): | ||
| + | def __init__(self, | ||
| + | self.sens_temp = temp | ||
| + | self.sens_hum = hum | ||
| + | self.temp=0 | ||
| + | self.hum=0 | ||
| + | self.dewpoint=0 | ||
| + | | ||
| + | def get_dp(self): | ||
| + | if self.sens_temp: | ||
| + | self.temp=self.sens_temp() | ||
| + | self.hum=self.sens_hum() | ||
| + | x = 1 - self.hum/ | ||
| + | dewpoint = (14.55 + 0.114 * self.temp) * x | ||
| + | dewpoint = dewpoint + ((2.5 + 0.007 * self.temp) * x) ** 3 | ||
| + | dewpoint = dewpoint + (15.9 + 0.117 * self.temp) * x ** 14 | ||
| + | self.dewpoint = self.temp - dewpoint | ||
| + | return self.dewpoint | ||
| + | Třída počítající rosný bod. Při její inicializaci se řekne, z jakých callback funkcí se data o teplotě a vlhkosti budou získávat. Při zavolání '' | ||
| + | |||
| + | def main(): | ||
| + | | ||
| + | if len(sys.argv) != 2: | ||
| + | sys.stderr.write(" | ||
| + | sys.stderr.write(" | ||
| + | sys.exit(1) | ||
| + | | ||
| + | filename = sys.argv[1] | ||
| + | |||
| + | cfg = config.Config( | ||
| + | i2c = { | ||
| + | " | ||
| + | }, | ||
| + | bus = [ | ||
| + | { | ||
| + | " | ||
| + | }, | ||
| + | ], | ||
| + | ) | ||
| + | | ||
| + | cfg.initialize() | ||
| + | Konfigurace sítě knihovny [[cs: | ||
| + | teplomer01 = cfg.get_device(" | ||
| + | vlhkost = cfg.get_device(" | ||
| + | dp = dewpoint(teplomer01.get_temp, | ||
| + | |||
| + | mVis = mv.MlabVisualiser(filename) | ||
| + | | ||
| + | mVis.addDataset(" | ||
| + | mVis.addDataset(" | ||
| + | mVis.addDataset(" | ||
| + | Jednotlivé senzory (zdroje dat) přidáme do vykreslovací třídy pomocí '' | ||
| + | mVis.run([" | ||
| + | Spustíme nekonečnou smyčku, která čte data a ty zaznamenává do souboru. V prvním poli jsou popisky senzorů, které se mají číst. Dále rychlost čtení (perioda) a počet opakování (0 je bez ukončení) | ||
| + | mVis.startWeb() | ||
| + | Spustíme webserver. Výchozí port je '' | ||
| + | if __name__ == ' | ||
| + | main() | ||
| + | | ||
| + | | ||
| + | | ||
| + | Prohlížeč dat HDF5 je například: | ||
cs/highcharts.txt · Poslední úprava: 2016/01/30 10:59 (upraveno mimo DokuWiki)
