[FMISID = 101398]

Ulkoinen verkkosivu
Edellinen päivitys: 21.09.2020 08:45
Grafiikka päivittyy 10 min välein | Ladataan palvelimelle (5,25,45) min

Graphing weather statistics with RRDTool
Get Mikkeli FMISID=101398 weather data

wget -t 1 -O ~/fmidata/mikkeli.xml ${URL}

! Ampersand character is replaced with (-) !

Parse XML data to time:value pairs

0 15-07-2017 13:50 Temperature 17.1 °C
1 15-07-2017 13:50 Wind 3.4 m/s
2 15-07-2017 13:50 Direction 311.0°
3 15-07-2017 13:50 Humidity 57.0 %
4 15-07-2017 13:50 Dew Point 8.6 °C
5 15-07-2017 13:50 Pressure 1013.7 hPa
6 15-07-2017 13:50 Felt like 16.9 °C

Save values to CSV file for RRDs tool input.
Save values to MySQL database, just in case.

Collect data from CSV file

TEMP=`cat ~/fmidata.csv | cut -d ',' -f1`
WIND=`cat ~/fmidata.csv | cut -d ',' -f2`
... and so on ..

Update RRD database:
rrdtool update ${RRDDIR}/temp.rrd N:${TEMP}
rrdtool update ${RRDDIR}/wind.rrd N:${WIND}

Create RRD Ghraps (Daily)

rrdtool graph $OUTPATH/wind-day.png
--start -24h --end N --step 300
GPRINT:w:MIN:"$MINWORD\: %5.1lf"
GPRINT:w:MAX:"$MAXWORD\: %5.1lf"
GPRINT:w:LAST:"$LASTWORD\: %5.1lf\\n"

Save FMI data to Windrose database

There are eight "buckets" (0-7) with ranges
displayed on the legend (m/s):
0-1, 1-2, 2-3, 3-5, 5-6, 6-10, 10-13.5, 13-99

The first element (0) specify the percentage of 0-1 reading the sum of these reading,
this will be placed in the center of the windrose plot.
The second element (1) specifies the percentage of 1-2 readings,
the third element (2) the percentage of 2-3 readings and so on.

First create a new windrose graph:
$graph = new WindroseGraph(600,600);
Get data from database and create the windrose plot: $wp = new WindrosePlot($data);

Copy FMI and Windrose graphs to server:

Recurse through a local FMI directory and upload the entire contents to a remote FTP server.
Copy the entire "FI101398-all/" directory located at ~/fmidata/ to a
remote server's /public_html/fmidata/FI101398-all/ via FTP.

The Data Collection System (28.12.2019)

Operating system: Linux
Kernel: 4.15.0-72-generic
Machine: x86_64 (Ubuntu 18.04.3 LTS Server)
Server version: Apache/2.4.29
Data collection: Perl v5.26.1
Graph: RRDtool 1.7.0
The windrose graphic: jpgraph-3.1.x

Powered By   Web Hosting by InMotion Hosting  and CodeIgniter 3.1.11