|
| 1 | +<!-- # Data visualizer from SaveEcoBot. Calculate AQI --> |
| 2 | +# Візуалізатор вихідних даних з SaveEcoBot. Обчислює AQI |
| 3 | + |
| 4 | +>**[Read in English :world_map:](README.md)** |
| 5 | +
|
| 6 | +<!-- This software up and run nice dashboard with metrics from CSV file and calculate AQI for PM2.5 and PM10 --> |
| 7 | +Це програмне забезпечення підготує та запустить панель з усіма показниками з CSV-файлу а також обчислить і покаже AQI для PM2.5 та PM10. |
| 8 | + |
| 9 | +<!-- Air Quality Index calculations based on [this document](https://www.airnow.gov/sites/default/files/2018-05/aqi-technical-assistance-document-may2016.pdf) --> |
| 10 | +Розрахунки Індексу Якості Повітря (Air Quality Index) базуються на основі [цього документа](https://www.airnow.gov/sites/default/files/2018-05/aqi-technical-assistance-document-may2016.pdf) |
| 11 | + |
| 12 | + |
| 13 | + |
| 14 | +<!-- More screenshots and usage examples [here](docs/en/screenshots.md). --> |
| 15 | +Більше скріншотів та прикладів використання [наведено тут [en]](docs/en/screenshots.md). |
| 16 | + |
| 17 | +--- |
| 18 | + |
| 19 | +## МЕНЮ <!-- omit in toc --> |
| 20 | + |
| 21 | +* [Необхідне програмне забезпечення](#Необхідне-програмне-забезпечення) |
| 22 | +* [Використання](#Використання) |
| 23 | + * [Швидкий старт](#Швидкий-старт) |
| 24 | + * [Повсякденне використання](#Повсякденне-використання) |
| 25 | + * [Запуск](#Запуск) |
| 26 | + * [Зупинка](#Зупинка) |
| 27 | + * [Датчики](#Датчики) |
| 28 | + * [Оброблення нових даних](#Оброблення-нових-даних) |
| 29 | + * [Додавання нових даних](#Додавання-нових-даних) |
| 30 | + * [Видалення даних](#Видалення-даних) |
| 31 | + * [Повне очищення](#Повне-очищення) |
| 32 | +* [Плани на майбутнє](#Плани-на-майбутнє) |
| 33 | +* [Хочете допомоги?](#Хочете-допомоги) |
| 34 | +* [Ліцензія та авторські права](#Ліцензія-та-авторські-права) |
| 35 | + |
| 36 | +--- |
| 37 | + |
| 38 | +<!-- ## Required software --> |
| 39 | +## Необхідне програмне забезпечення |
| 40 | + |
| 41 | +* [`Docker`](https://docs.docker.com/get-docker/) |
| 42 | +* [`docker-compose`](https://docs.docker.com/compose/install/) (для Linux) |
| 43 | + |
| 44 | +<!-- ## Usage --> |
| 45 | +## Використання |
| 46 | + |
| 47 | +<!-- ### Quick start --> |
| 48 | +### Швидкий старт |
| 49 | + |
| 50 | +<!-- 1. Clone this repo or [download it as zip](https://github.com/MaxymVlasov/eco-data-visualizer/archive/master.zip) and unpack. --> |
| 51 | +1. Зклонуйте цей репозиторій або [завантажте його як zip архів](https://github.com/MaxymVlasov/eco-data-visualizer/archive/master.zip) і розпакуйте. |
| 52 | + |
| 53 | +<!-- 2. Choose SaveEcoBot station [on this map](https://www.saveecobot.com/en/maps) and click 'Details' --> |
| 54 | +2. Виберіть станцію SaveEcoBot [на цій карті](https://www.saveecobot.com/uk/maps) та натисніть "Детальна інформація про станцію" |
| 55 | + |
| 56 | + |
| 57 | +<!-- 3. On bottom you'll see `Download raw data (CSV)` --> |
| 58 | +<!-- click on the link and save CSV-file to `./data/original_data/` inside downloaded repo. --> |
| 59 | +1. Унизу ви побачите "Завантажити дані у форматі CSV" |
| 60 | + |
| 61 | +натисніть на посилання і збережіть CSV-файл у `./data/original_data/` всередині завантаженого репозиторію. |
| 62 | + |
| 63 | +<!-- 4. Open terminal in the root of `eco-data-visualizer` and run: --> |
| 64 | +4. Відкрийте термінал у корені `eco-data-visualizer` і виконайте: |
| 65 | + |
| 66 | +```bash |
| 67 | +# Підготовка даних |
| 68 | +docker build -t data-transformer ./data-transformer-app |
| 69 | +docker run -v "$PWD"/data/:/app/data/ --rm data-transformer |
| 70 | +# Запуск візуалізації |
| 71 | +docker-compose up -d |
| 72 | +# Додавання даних датчиків до InfluxDB |
| 73 | +docker build -t add_influx_data ./provisioning/influx |
| 74 | +docker run -v "$PWD"/data/influx/:/influx-data/ --rm --network=eco-data-visualizer_default add_influx_data |
| 75 | +``` |
| 76 | + |
| 77 | +<!-- ><sup>Depending on your internet bandwidth, CPU, Storage I/O, CSV file size and number of processed files `First Init` may take different times. |
| 78 | +For example, in laptop with `100Mbit/s` bandwidth, `Intel Core i7-8550U` (max clock speed `4Ghz`), SSD disk and:</sup> |
| 79 | +<sup> - 2 CSV files (together: 620MB) it takes `11m47s` (`9m39s` to transform data)</sup> |
| 80 | +<sup> - 1 CSV file (513MB) - `6m16s` (`4m18s` to transform data)</sup> |
| 81 | +<sup> - 1 CSV file (107MB) - `6m35s` (`4m32s` to transform data)</sup> |
| 82 | + --> |
| 83 | +<!-- markdownlint-disable no-inline-html --> |
| 84 | +><sup>Залежно від пропускної здатності вашого інтернет-каналу, параметрів процесора, жорсткого диску, розміру CSV-файлу та кількості оброблених файлів `Швидкий старт` може тривати різний час. |
| 85 | +Наприклад, у ноутбуці з пропускною здатністю `100 Мбіт/с`, `Intel Core i7-8550U` (максимальна тактова частота `4ГГц`), з SSD-диском та: </sup> |
| 86 | +<sup> - 2-ма файлами CSV (разом: 620MB) потрібно `11m47s` (з них `9m39s` для перетворення даних) </sup> |
| 87 | +<sup> - 1-ним файлом CSV (513MB) - `6m16s` (з них `4m18s` для перетворення даних) </sup> |
| 88 | +<sup> - 1-ним файлом CSV (107MB) - `6m35s` (з них `4m32s` для перетворення даних) </sup> |
| 89 | +<!-- markdownlint-enable no-inline-html --> |
| 90 | +
|
| 91 | +<!-- 5. Open [http://localhost/](http://localhost/) for see visualizations! --> |
| 92 | +5. Відкрийте [http://localhost/](http://localhost/), щоб побачити візуалізацію! |
| 93 | + |
| 94 | +<!-- ### Daily usage --> |
| 95 | +### Повсякденне використання |
| 96 | + |
| 97 | +<!-- #### Start --> |
| 98 | +#### Запуск |
| 99 | + |
| 100 | +<!-- For start visualization open terminal in the root of repo and run: --> |
| 101 | +Для запуску візуалізації відкрийте термінал у корені репозиторія і виконайте: |
| 102 | + |
| 103 | +```bash |
| 104 | +docker-compose up -d |
| 105 | +``` |
| 106 | + |
| 107 | +<!-- Then open [http://localhost/](http://localhost/) for see visualizations. --> |
| 108 | +Потім відкрийте [http://localhost/](http://localhost/), щоб побачити візуалізацію. |
| 109 | + |
| 110 | +<!-- #### Stop --> |
| 111 | +#### Зупинка |
| 112 | + |
| 113 | +<!-- For stop visualization open terminal in the root of repo and run: --> |
| 114 | +Для зупинки візуалізації відкрийте термінал у корені репозиторія і запустіть: |
| 115 | + |
| 116 | +```bash |
| 117 | +docker-compose stop |
| 118 | +``` |
| 119 | + |
| 120 | +<!-- ### Sensors data --> |
| 121 | +### Датчики |
| 122 | + |
| 123 | +<!-- #### Process new data --> |
| 124 | +#### Оброблення нових даних |
| 125 | + |
| 126 | +<!-- 1. Download CSV file from SaveEcoBot station --> |
| 127 | +<!-- 2. Move it to `data/original_data` folder in this repo. --> |
| 128 | +1. Завантажте CSV-файл з SaveEcoBot |
| 129 | +2. Перемістіть його в теку `data/original_data` цього репозиторія. |
| 130 | +3. Виконайте: |
| 131 | + |
| 132 | +```bash |
| 133 | +# Видалення тимчасових файлів |
| 134 | +docker run -v "$PWD"/data/:/app/ --rm amancevice/pandas:1.0.3-alpine sh -c "rm -f /app/csv/*.csv /app/influx/*.influx" |
| 135 | +# Підготовка даних |
| 136 | +docker build -t data-transformer ./data-transformer-app |
| 137 | +docker run -v "$PWD"/data/:/app/data/ --rm data-transformer |
| 138 | +``` |
| 139 | + |
| 140 | +<!-- #### Add new data --> |
| 141 | +#### Додавання нових даних |
| 142 | + |
| 143 | +<!-- For add new data open terminal in the root of repo and run: --> |
| 144 | +Для додавання нових даних у візуалізацію відкрийте термінал у корені репозиторія і виконайте: |
| 145 | + |
| 146 | +```bash |
| 147 | +# Запуск візуалізації |
| 148 | +docker-compose up -d |
| 149 | +# Додання нових даних |
| 150 | +docker build -t add_influx_data ./provisioning/influx |
| 151 | +docker run -v "$PWD"/data/influx/:/influx-data/ --rm --network=eco-data-visualizer_default add_influx_data |
| 152 | +``` |
| 153 | + |
| 154 | +<!-- #### Remove data --> |
| 155 | +#### Видалення даних |
| 156 | + |
| 157 | +<!-- For remove sensors data open terminal in the root of repo and run: --> |
| 158 | +Для видалення даних датчиків з візуалізації відкрийте термінал у корені репозиторія і виконайте: |
| 159 | + |
| 160 | + |
| 161 | +```bash |
| 162 | +docker-compose down |
| 163 | +docker volume rm eco-data-visualizer_sensors-data |
| 164 | +``` |
| 165 | + |
| 166 | +<!-- ### Cleanup --> |
| 167 | +### Повне очищення |
| 168 | + |
| 169 | +<!-- For cleanup open terminal in the root of repo and run: --> |
| 170 | +Для повного очищення відкрийте термінал у корені репозиторія і запустіть: |
| 171 | + |
| 172 | +```bash |
| 173 | +# Зупинка візуалізації |
| 174 | +docker-compose down |
| 175 | +# Видалення томів з налаштуваннями та даними датчиків |
| 176 | +docker volume rm eco-data-visualizer_grafana-settings eco-data-visualizer_sensors-data |
| 177 | +# Видалення тимчасових файлів |
| 178 | +docker run -v "$PWD"/data/:/app/ --rm amancevice/pandas:1.0.3-alpine sh -c "rm -f /app/csv/*.csv /app/influx/*.influx" |
| 179 | +``` |
| 180 | + |
| 181 | +<!-- ## Future plans --> |
| 182 | +## Плани на майбутнє |
| 183 | + |
| 184 | +Дивіться [відповідну секцію](README.md#future-plans) в англомовній версії. |
| 185 | + |
| 186 | +<!-- markdownlint-disable no-trailing-punctuation --> |
| 187 | +<!-- ## Want help? --> |
| 188 | +## Хочете допомоги? |
| 189 | +<!-- markdownlint-enable no-trailing-punctuation --> |
| 190 | + |
| 191 | +<!-- You can: |
| 192 | +* Improve this software (see [Future plans](#future-plans-) section) |
| 193 | +* [Donate to SaveEcoBot](https://www.saveecobot.com/en/donate) |
| 194 | +* Assemble or buy Air quality monitoring station and connect it to SaveEcoBot. SaveDnipro can assemble and connect it for you. [Buy here](https://www.savednipro.org/product/stanciya-monitoringu-yakosti-povitrya/) --> |
| 195 | + |
| 196 | +Ви можете: |
| 197 | + |
| 198 | +* Удосконалити це програмне забезпечення (див. розділ [Плани на майбутнє [en]](README.md#future-plans)). |
| 199 | +* [Зробити пожертву у SaveEcoBot](https://www.saveecobot.com/uk/donate). |
| 200 | +* Зібрати або придбати станцію контролю якості повітря та додати її до SaveEcoBot. SaveDnipro може зібрати і додати його для вас. [Замовляти тут](https://www.savednipro.org/product/stanciya-monitoringu-yakosti-povitrya/). |
| 201 | + |
| 202 | +<!-- ## License and Copyrights --> |
| 203 | +## Ліцензія та авторські права |
| 204 | + |
| 205 | +<!-- This software licensed by [Apache License 2.0](LICENSE) --> |
| 206 | +Це програмне забезпечення розповсюджується під ліцензією [Apache License 2.0](LICENSE). |
| 207 | + |
| 208 | +<!-- All data from SaveEcoBot licensed by [Creative Commons Attribution License 4.0 International](https://creativecommons.org/licenses/by/4.0/legalcode) --> |
| 209 | +Усі дані з SaveEcoBot розповсюджуються під ліцензією [Creative Commons Attribution License 4.0 International](https://creativecommons.org/licenses/by/4.0/legalcode). |
| 210 | + |
| 211 | +<!-- Other data and sources can be licensed in different way. --> |
| 212 | +Інші дані та джерела можуть мати інші ліцензії. |
0 commit comments