Browse Source

add csv_wr

master
Jakub Škrabánek 1 year ago
parent
commit
e837d2aa2d
  1. 3
      csv_wr/.idea/.gitignore
  2. 10
      csv_wr/.idea/csv_wr.iml
  3. 6
      csv_wr/.idea/inspectionProfiles/profiles_settings.xml
  4. 7
      csv_wr/.idea/misc.xml
  5. 8
      csv_wr/.idea/modules.xml
  6. 61
      csv_wr/data.csv
  7. 21
      csv_wr/main.py
  8. 48
      csv_wr/reader.py
  9. 26
      csv_wr/writer_loop.py

3
csv_wr/.idea/.gitignore

@ -0,0 +1,3 @@
# Default ignored files
/shelf/
/workspace.xml

10
csv_wr/.idea/csv_wr.iml

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="PYTHON_MODULE" version="4">
<component name="NewModuleRootManager">
<content url="file://$MODULE_DIR$">
<excludeFolder url="file://$MODULE_DIR$/.venv" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

6
csv_wr/.idea/inspectionProfiles/profiles_settings.xml

@ -0,0 +1,6 @@
<component name="InspectionProjectProfileManager">
<settings>
<option name="USE_PROJECT_PROFILE" value="false" />
<version value="1.0" />
</settings>
</component>

7
csv_wr/.idea/misc.xml

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Black">
<option name="sdkName" value="Python 3.12 (csv_wr)" />
</component>
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.12 (csv_wr)" project-jdk-type="Python SDK" />
</project>

8
csv_wr/.idea/modules.xml

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/csv_wr.iml" filepath="$PROJECT_DIR$/.idea/csv_wr.iml" />
</modules>
</component>
</project>

61
csv_wr/data.csv

@ -0,0 +1,61 @@
Datum a cas,DHT11 vlhkost,DHT11 teplota,HC-SR04 vzdalenost
2024-04-08 14:40:46,39,27,199
2024-04-08 14:40:47,37,24,105
2024-04-08 14:40:48,49,26,113
2024-04-08 14:40:49,72,25,175
2024-04-08 14:40:50,32,20,182
2024-04-08 14:40:51,34,27,108
2024-04-08 14:40:52,54,25,63
2024-04-08 14:40:53,48,28,115
2024-04-08 14:40:54,58,20,50
2024-04-08 14:40:55,71,28,171
2024-04-08 14:40:56,56,28,65
2024-04-08 14:40:57,50,23,134
2024-04-08 14:40:58,53,24,72
2024-04-08 14:40:59,40,27,105
2024-04-08 14:41:00,33,27,113
2024-04-08 14:41:01,59,28,175
2024-04-08 14:41:02,40,20,56
2024-04-08 14:41:03,59,23,27
2024-04-08 14:41:04,45,26,124
2024-04-08 14:41:05,31,26,143
2024-04-08 14:41:06,58,26,27
2024-04-08 14:41:07,73,25,65
2024-04-08 14:41:08,41,25,55
2024-04-08 14:41:09,64,20,148
2024-04-08 14:41:10,68,24,112
2024-04-08 14:41:11,48,22,37
2024-04-08 14:41:12,65,22,77
2024-04-08 14:41:13,78,26,57
2024-04-08 14:41:14,68,26,59
2024-04-08 14:41:15,46,28,133
2024-04-08 14:49:30,75,27,49
2024-04-08 14:49:31,65,27,190
2024-04-08 14:49:32,52,27,26
2024-04-08 14:49:33,79,24,182
2024-04-08 14:49:34,43,27,185
2024-04-08 14:49:35,73,20,188
2024-04-08 14:49:36,63,26,149
2024-04-08 14:49:37,76,20,66
2024-04-08 14:49:38,63,27,180
2024-04-08 14:49:39,31,23,168
2024-04-08 14:49:40,69,26,127
2024-04-08 14:49:41,76,21,134
2024-04-08 14:49:42,54,23,45
2024-04-08 14:49:43,53,20,179
2024-04-08 14:49:44,51,26,30
2024-04-08 14:49:45,80,26,116
2024-04-08 14:49:46,39,25,148
2024-04-08 14:49:47,76,28,41
2024-04-08 14:49:48,46,22,163
2024-04-08 14:49:49,30,22,183
2024-04-08 14:49:50,37,23,163
2024-04-08 14:49:51,53,20,164
2024-04-08 14:49:52,35,26,89
2024-04-08 14:49:53,54,25,197
2024-04-08 14:49:54,55,20,44
2024-04-08 14:49:55,53,21,67
2024-04-08 14:49:56,31,28,92
2024-04-08 14:49:57,72,27,27
2024-04-08 14:49:58,47,23,60
2024-04-08 14:49:59,43,26,103
1 Datum a cas DHT11 vlhkost DHT11 teplota HC-SR04 vzdalenost
2 2024-04-08 14:40:46 39 27 199
3 2024-04-08 14:40:47 37 24 105
4 2024-04-08 14:40:48 49 26 113
5 2024-04-08 14:40:49 72 25 175
6 2024-04-08 14:40:50 32 20 182
7 2024-04-08 14:40:51 34 27 108
8 2024-04-08 14:40:52 54 25 63
9 2024-04-08 14:40:53 48 28 115
10 2024-04-08 14:40:54 58 20 50
11 2024-04-08 14:40:55 71 28 171
12 2024-04-08 14:40:56 56 28 65
13 2024-04-08 14:40:57 50 23 134
14 2024-04-08 14:40:58 53 24 72
15 2024-04-08 14:40:59 40 27 105
16 2024-04-08 14:41:00 33 27 113
17 2024-04-08 14:41:01 59 28 175
18 2024-04-08 14:41:02 40 20 56
19 2024-04-08 14:41:03 59 23 27
20 2024-04-08 14:41:04 45 26 124
21 2024-04-08 14:41:05 31 26 143
22 2024-04-08 14:41:06 58 26 27
23 2024-04-08 14:41:07 73 25 65
24 2024-04-08 14:41:08 41 25 55
25 2024-04-08 14:41:09 64 20 148
26 2024-04-08 14:41:10 68 24 112
27 2024-04-08 14:41:11 48 22 37
28 2024-04-08 14:41:12 65 22 77
29 2024-04-08 14:41:13 78 26 57
30 2024-04-08 14:41:14 68 26 59
31 2024-04-08 14:41:15 46 28 133
32 2024-04-08 14:49:30 75 27 49
33 2024-04-08 14:49:31 65 27 190
34 2024-04-08 14:49:32 52 27 26
35 2024-04-08 14:49:33 79 24 182
36 2024-04-08 14:49:34 43 27 185
37 2024-04-08 14:49:35 73 20 188
38 2024-04-08 14:49:36 63 26 149
39 2024-04-08 14:49:37 76 20 66
40 2024-04-08 14:49:38 63 27 180
41 2024-04-08 14:49:39 31 23 168
42 2024-04-08 14:49:40 69 26 127
43 2024-04-08 14:49:41 76 21 134
44 2024-04-08 14:49:42 54 23 45
45 2024-04-08 14:49:43 53 20 179
46 2024-04-08 14:49:44 51 26 30
47 2024-04-08 14:49:45 80 26 116
48 2024-04-08 14:49:46 39 25 148
49 2024-04-08 14:49:47 76 28 41
50 2024-04-08 14:49:48 46 22 163
51 2024-04-08 14:49:49 30 22 183
52 2024-04-08 14:49:50 37 23 163
53 2024-04-08 14:49:51 53 20 164
54 2024-04-08 14:49:52 35 26 89
55 2024-04-08 14:49:53 54 25 197
56 2024-04-08 14:49:54 55 20 44
57 2024-04-08 14:49:55 53 21 67
58 2024-04-08 14:49:56 31 28 92
59 2024-04-08 14:49:57 72 27 27
60 2024-04-08 14:49:58 47 23 60
61 2024-04-08 14:49:59 43 26 103

21
csv_wr/main.py

@ -0,0 +1,21 @@
import csv
import datetime
import random
#definice senzrorů
senzory = [ "DHT11 vlhkost","DHT11 teplota", "HC-SR04 vzdalenost"]
#otevření souboru
with open("data.csv", "a", newline="") as csvfile:
writer = csv.writer(csvfile) #zapisovatel
now = datetime.datetime.now() #aktualní datum a čas
if csvfile.tell() == 0: #zajistit hlavičku souboru
writer.writerow(["Datum a cas"] + [senzor for senzor in senzory])
hodnoty = [ #simulatce dat
random.randint(30,80), #vlhkost
random.randint(20,28), #teplota
random.randint(20,200) #vzdalenost
]
#zapis dat
writer.writerow([now.strftime("%Y-%m-%d %H:%M:%S")] + hodnoty)

48
csv_wr/reader.py

@ -0,0 +1,48 @@
import csv
import matplotlib.pyplot as plt
import datetime
with open("data.csv", "r") as csvfile:
reader = csv.reader(csvfile)
next(reader,None)
data_cas = []
data_vlhkost = []
data_teplota = []
data_vzdalenost = []
for row in reader:
datum_cas = row[0]
try:
datetime_object = datetime.datetime.strptime(datum_cas, "%Y-%m-%d %H:%M:%S")
except ValueError:
print(f"Chybní format data a času: {datum_cas}")
data_cas.append(datetime_object)
data_vlhkost.append(float(row[1]))
data_teplota.append(float(row[2]))
data_vzdalenost.append(float(row[3]))
#print(data_vlhkost) #test
plt.subplot(311) # 3 řádky, 1 sloupec, 1. graf
plt.plot(data_cas, data_vlhkost, label="Vlkost")
plt.legend()
plt.xticks(visible=False)
plt.title("Vlhkost")
plt.subplot(312) # 3 řádky, 1 sloupec, 2. graf
plt.plot(data_cas, data_teplota, label="teplota")
plt.legend()
plt.xticks(visible=False)
plt.title("teplota")
plt.subplot(313) # 3 řádky, 1 sloupec, 3. graf
plt.plot(data_cas, data_vzdalenost, label="vzdalenost")
plt.legend()
plt.title("vzdalenost")
plt.show()

26
csv_wr/writer_loop.py

@ -0,0 +1,26 @@
import csv
import datetime
import random
import time
#definice senzrorů
senzory = [ "DHT11 vlhkost","DHT11 teplota", "HC-SR04 vzdalenost"]
#otevření souboru
with open("data.csv", "a", newline="") as csvfile:
writer = csv.writer(csvfile) #zapisovatel
if csvfile.tell() == 0: # zajistit hlavičku souboru
writer.writerow(["Datum a cas"] + [senzor for senzor in senzory])
for i in range(30):
now = datetime.datetime.now() #aktualní datum a čas
hodnoty = [ #simulatce dat
random.randint(30,80), #vlhkost
random.randint(20,28), #teplota
random.randint(20,200) #vzdalenost
]
#zapis dat
writer.writerow([now.strftime("%Y-%m-%d %H:%M:%S")] + hodnoty)
print(f"{i+1}/30")
time.sleep(1)
Loading…
Cancel
Save