add single plots foreach

master
DJh2o2 2022-08-18 10:24:40 +07:00
commit ad60a7f77f
1 changed files with 57 additions and 39 deletions

@ -1,39 +1,57 @@
import matplotlib.pyplot as plt import matplotlib.pyplot as plt
import mysql.connector import mysql.connector
def Average(lst): def Average(lst):
return sum(lst) / len(lst) return sum(lst) / len(lst)
# mariadb # mariadb
mariadbConnection = mysql.connector.connect( mariadbConnection = mysql.connector.connect(
host="server0", user="root", password="lungretter1", database="bandwidth") host="server0", port="3306", user="root", password="lungretter1", database="bandwidth")
mariadbCursor = mariadbConnection.cursor() mariadbCursor = mariadbConnection.cursor()
mariadbCursor.execute("SELECT times, ping, download, upload FROM speedtest") mariadbCursor.execute("SELECT times, ping, download, upload FROM speedtest")
mariadbResult = mariadbCursor.fetchall() mariadbResult = mariadbCursor.fetchall()
times = [] times = []
pings = [] pings = []
downloads = [] downloads = []
uploads = [] uploads = []
sum_ping = 0.0 sum_ping = 0.0
for i in mariadbResult: for i in mariadbResult:
times.append(i[0]) times.append(i[0])
pings.append(i[1]) pings.append(i[1])
downloads.append(i[2]) downloads.append(i[2])
uploads.append(i[3]) uploads.append(i[3])
print("i = ", len(times)) print("i = ", len(times))
print("avg ping = ", Average(pings), " ms") print("avg ping = ", Average(pings), " ms")
print("avg download = ", Average(downloads) / 1000000, " mbit/s") print("avg download = ", Average(downloads) / 1000000, " mbit/s")
print("avg upload = ", Average(uploads) / 1000000, " mbit/s") print("avg upload = ", Average(uploads) / 1000000, " mbit/s")
# plot # plotall
plt.plot(times, pings, label="Ping") plt.plot(times, pings, label="Ping")
plt.plot(times, downloads, label="Download") plt.plot(times, downloads, label="Download")
plt.plot(times, uploads, label="Upload") plt.plot(times, uploads, label="Upload")
plt.legend() plt.title("bandwidth from mariadb")
plt.title("bandwidth from mariadb") plt.legend()
plt.show() plt.show()
# plotping
plt.plot(times, pings, label="Ping")
plt.title("pings from mariadb")
plt.legend()
plt.show()
# plotdownloads
plt.plot(times, downloads, label="Download")
plt.title("downloads from mariadb")
plt.legend()
plt.show()
# plotuploads
plt.plot(times, uploads, label="Upload")
plt.title("uploads from mariadb")
plt.legend()
plt.show()