1 | <?php
|
---|
2 | set_time_limit(0);
|
---|
3 | include_once 'php-ofc-library/open-flash-chart.php';
|
---|
4 | include_once 'cfg/mysql.php';
|
---|
5 | connectdb();
|
---|
6 |
|
---|
7 | $roomresult = mysql_query("
|
---|
8 | SELECT name
|
---|
9 | FROM `save_energy`.`rooms`
|
---|
10 | ORDER BY name ASC;
|
---|
11 | ");
|
---|
12 | while($row = mysql_fetch_array($roomresult))
|
---|
13 | {
|
---|
14 | $roomarray[] = ($row['name']);
|
---|
15 | }
|
---|
16 |
|
---|
17 | foreach($roomarray as $room)
|
---|
18 | {
|
---|
19 | $description = array();
|
---|
20 | $colorcode=0;
|
---|
21 | $data = array();
|
---|
22 |
|
---|
23 | //-- X AXIS RESULTS--\\
|
---|
24 |
|
---|
25 | $result_x = mysql_query("
|
---|
26 | SELECT TIME(`tuples`.start) AS xaxis
|
---|
27 | FROM (`save_energy`.`tuples`)
|
---|
28 | JOIN `save_energy`.`sensors` ON (`tuples`.sensorID=`sensors`.sensorID)
|
---|
29 | JOIN `save_energy`.`rooms` ON (`sensors`.roomID=`rooms`.roomID)
|
---|
30 | WHERE `sensors`.name LIKE '%usage'
|
---|
31 | AND DATE(`tuples`.start) = CURRENT_DATE() - INTERVAL 47 DAY
|
---|
32 | AND `rooms`.name='$room'
|
---|
33 | GROUP BY `tuples`.start ASC
|
---|
34 | ");
|
---|
35 |
|
---|
36 | while($row = mysql_fetch_array($result_x))
|
---|
37 | {
|
---|
38 | $xaxis[] = ($row['xaxis']);
|
---|
39 | }
|
---|
40 |
|
---|
41 |
|
---|
42 | //-- DESCRIPTION RESULTS--\\
|
---|
43 |
|
---|
44 | $result = mysql_query("
|
---|
45 | SELECT DISTINCT `sensors`.description as description
|
---|
46 | FROM (`save_energy`.`sensors`)
|
---|
47 | JOIN `save_energy`.`tuples` ON (`sensors`.sensorID=`tuples`.sensorID)
|
---|
48 | JOIN `save_energy`.`rooms` ON (`sensors`.roomID=`rooms`.roomID)
|
---|
49 | WHERE `sensors`.name LIKE '%usage'
|
---|
50 | AND DATE(`tuples`.start) = CURRENT_DATE() - INTERVAL 47 DAY
|
---|
51 | AND `rooms`.name='$room'
|
---|
52 | ORDER BY `sensors`.description ASC
|
---|
53 | ");
|
---|
54 |
|
---|
55 | while($row = mysql_fetch_array($result))
|
---|
56 | {
|
---|
57 | $description[] = ($row['description']);
|
---|
58 | }
|
---|
59 |
|
---|
60 |
|
---|
61 |
|
---|
62 | $chart = new open_flash_chart();
|
---|
63 | $line_default_dot = new dot();
|
---|
64 | $line_default_dot->size(4)->halo_size(2)->colour('#000000');
|
---|
65 |
|
---|
66 | foreach($description as $value)
|
---|
67 | {
|
---|
68 | $colorcode++;
|
---|
69 | if($colorcode==1) {$color = '#f7921c';}
|
---|
70 | if($colorcode==2) {$color = '#bf7115';}
|
---|
71 | if($colorcode==3) {$color = '#6c3d06';}
|
---|
72 | if($colorcode==4) {$color = '#2d1d0a';}
|
---|
73 | if($colorcode==5) {$color = '#2d1d0a';}
|
---|
74 | if($colorcode==6) {$color = '#2d1d0a';}
|
---|
75 | $name=$value;
|
---|
76 |
|
---|
77 | $result1 = mysql_query("
|
---|
78 | SELECT value*1000 AS value
|
---|
79 | FROM (`save_energy`.`tuples`)
|
---|
80 | JOIN `save_energy`.`sensors` ON (`tuples`.sensorID=`sensors`.sensorID)
|
---|
81 | JOIN `save_energy`.`rooms` ON (`sensors`.roomID=`rooms`.roomID)
|
---|
82 | WHERE DATE(`tuples`.start) = CURRENT_DATE() - INTERVAL 47 DAY
|
---|
83 | AND `sensors`.name LIKE '%usage'
|
---|
84 | AND `rooms`.name='$room'
|
---|
85 | AND `sensors`.description='$name'
|
---|
86 | ORDER BY `tuples`.start ASC
|
---|
87 | ");
|
---|
88 |
|
---|
89 | while($row = mysql_fetch_array($result1))
|
---|
90 | {
|
---|
91 | $data[] = intval($row['value']);
|
---|
92 | }
|
---|
93 |
|
---|
94 | $value = new line();
|
---|
95 | $value->set_default_dot_style($line_default_dot);
|
---|
96 | $value->set_values( $data );
|
---|
97 | $value->set_width( 2 );
|
---|
98 | $value->set_colour($color);
|
---|
99 | $value->set_key($name, 14);
|
---|
100 |
|
---|
101 | $chart->add_element( $value );
|
---|
102 | unset($data);
|
---|
103 | }
|
---|
104 |
|
---|
105 | //-- Y AXIS --\\
|
---|
106 |
|
---|
107 | $y = new y_axis();
|
---|
108 | $y->set_range( 0, 300, 30 );
|
---|
109 | $y->set_colour('#000000');
|
---|
110 | $y->set_grid_colour('#D8D8D8');
|
---|
111 |
|
---|
112 |
|
---|
113 | //-- X AXIS --\\
|
---|
114 |
|
---|
115 | $x = new x_axis();
|
---|
116 | $x->offset(false)->steps(1);
|
---|
117 | $x->colour('#000000')->grid_colour('#D8D8D8');
|
---|
118 |
|
---|
119 | $x_labels = new x_axis_labels();
|
---|
120 | $x_labels->set_steps( 3 );
|
---|
121 | $x_labels->set_colour( '#000000' );
|
---|
122 | $x_labels->set_labels( $xaxis );
|
---|
123 | $x->set_labels( $x_labels );
|
---|
124 |
|
---|
125 |
|
---|
126 | //-- CHART --\\
|
---|
127 |
|
---|
128 | $title = new title('Electriciteitverbruik in kamer '.$room.' in Wh (Watt per uur)');
|
---|
129 | $chart->set_title( $title );
|
---|
130 | $chart->set_x_axis( $x );
|
---|
131 | $chart->set_y_axis( $y );
|
---|
132 | $chart->set_bg_colour( '#FFFFFF' );
|
---|
133 |
|
---|
134 |
|
---|
135 | //-- WRITE TO FILE --\\
|
---|
136 |
|
---|
137 | echo $chart->toPrettyString();
|
---|
138 | $chartwrite = $chart->toPrettyString();
|
---|
139 |
|
---|
140 | $fh = fopen("graphs/elec_".$room.".txt", 'w') or die("can't open file");
|
---|
141 | fwrite($fh, $chartwrite);
|
---|
142 | fclose($fh);
|
---|
143 | unset($xaxis);
|
---|
144 | }
|
---|
145 |
|
---|
146 | ?>
|
---|