diff --git a/ev2.py b/ev2.py index c3eca12..c096de7 100644 --- a/ev2.py +++ b/ev2.py @@ -133,7 +133,7 @@ def main(): match usrIn: case "1": - raise NotImplementedError + parse("falsos.txt") case "2": filters = filter_menu(filters) case "3": diff --git a/utilsv2/graphs.py b/utilsv2/graphs.py index ff9a07f..e05d6ab 100644 --- a/utilsv2/graphs.py +++ b/utilsv2/graphs.py @@ -1,11 +1,24 @@ -from matplotlib import pyplot as plt +from datetime import datetime + +import matplotlib.pyplot as plt +import numpy as np + +from utilsv2 import stats, utils class Plotter: - pass + def __init__(self) -> None: + self.x = [] + self.y = [] + self.figure = None + self.ax = None - def plot_bars(self): - pass + def plot_bars(self, title: str, isDepth: bool = False): + self.figure, self.ax = plt.subplots() + + self.ax.bar(self.x, self.y) + self.ax.set_title(title) + plt.show() def plot_lin(self): pass @@ -15,3 +28,47 @@ class Plotter: def adjust_x(self): pass + + def add_x_values(self, xvalues): + self.x = xvalues + + def add_y_values(self, yvalues): + self.y = yvalues + + @staticmethod + def concat_data_day(data): + pass + + @staticmethod + def concat_data_month(data): + x = [] + y_vals = {"e": [], "m": [], "d": []} + + currMonth: datetime = data[0]["DateTime"] + currMonth_str = utils.print_ym(currMonth) + + x.append(currMonth_str) + e = 0 + m = [] + d = [] + idx = 0 + while idx <= len(data): + if data[idx]["DateTime"].month == currMonth.month and idx < len(data): + e += 1 + m.append(data[idx]["Magnitudes"]["L"]["Magnitude"]) + d.append(data[idx]["Depth"]) + idx += 1 + else: + y_vals["e"].append(e) + y_vals["m"].append(np.average(m)) + y_vals["d"].append(np.average(d)) + + currMonth = data[idx]["DateTime"] + currMonth_str = utils.print_ym(currMonth) + + x.append(currMonth_str) + e = 0 + m = [] + d = [] + + return x, y_vals diff --git a/utilsv2/mongo.py b/utilsv2/mongo.py index cb6b568..693b210 100644 --- a/utilsv2/mongo.py +++ b/utilsv2/mongo.py @@ -3,7 +3,6 @@ from typing import Any from pymongo import MongoClient from pymongo.collection import Collection -from pymongo.cursor import Cursor from pymongo.errors import ConnectionFailure try: diff --git a/utilsv2/nordic.py b/utilsv2/nordic.py index c1c66f6..26ee5b0 100644 --- a/utilsv2/nordic.py +++ b/utilsv2/nordic.py @@ -1,6 +1,5 @@ import json import logging -import textwrap from collections import defaultdict from datetime import datetime, time from typing import Any diff --git a/utilsv2/parser.py b/utilsv2/parser.py index 527a48a..9e1ae4f 100644 --- a/utilsv2/parser.py +++ b/utilsv2/parser.py @@ -1,6 +1,5 @@ import logging from io import TextIOWrapper -from typing import Any try: from utilsv2 import utils diff --git a/utilsv2/stats.py b/utilsv2/stats.py index a626308..6b0cc54 100644 --- a/utilsv2/stats.py +++ b/utilsv2/stats.py @@ -2,7 +2,6 @@ import time from datetime import datetime import numpy as np -from pymongo import MongoClient def print_filters(filters): diff --git a/utilsv2/utils.py b/utilsv2/utils.py index af4b2c6..63902a3 100644 --- a/utilsv2/utils.py +++ b/utilsv2/utils.py @@ -30,3 +30,7 @@ def toInt(v: str) -> int | None: return int(v) except ValueError: return None + + +def print_ym(dt: datetime) -> str: + return dt.strftime("%Y-%m")