mirror of
https://github.com/titanscouting/tra-superscript.git
synced 2024-12-30 19:39:09 +00:00
feat: gui layout + basic func
This commit is contained in:
parent
b214e2f797
commit
29d4002dc0
77
config.json
77
config.json
@ -1,21 +1,76 @@
|
||||
{
|
||||
"max-threads": 0.5,
|
||||
"team": "",
|
||||
"competition": "",
|
||||
"competition": "2020ilch",
|
||||
"key": {
|
||||
"database":"",
|
||||
"tba":""
|
||||
"database": "mongodb+srv://analysis:MU2gPeEjEurRt2n@2022-scouting-4vfuu.mongodb.net/<dbname>?retryWrites=true&w=majority",
|
||||
"tba": "UDvKmPjPRfwwUdDX1JxbmkyecYBJhCtXeyVk9vmO2i7K0Zn4wqQPMfzuEINXJ7e5"
|
||||
},
|
||||
"statistics": {
|
||||
"match": {
|
||||
"balls-blocked":["basic_stats","historical_analysis","regression_linear","regression_logarithmic","regression_exponential","regression_polynomial","regression_sigmoidal"],
|
||||
"balls-collected":["basic_stats","historical_analysis","regression_linear","regression_logarithmic","regression_exponential","regression_polynomial","regression_sigmoidal"],
|
||||
"balls-lower-teleop":["basic_stats","historical_analysis","regression_linear","regression_logarithmic","regression_exponential","regression_polynomial","regression_sigmoidal"],
|
||||
"balls-lower-auto":["basic_stats","historical_analysis","regression_linear","regression_logarithmic","regression_exponential","regression_polynomial","regression_sigmoidal"],
|
||||
"balls-started":["basic_stats","historical_analyss","regression_linear","regression_logarithmic","regression_exponential","regression_polynomial","regression_sigmoidal"],
|
||||
"balls-upper-teleop":["basic_stats","historical_analysis","regression_linear","regression_logarithmic","regression_exponential","regression_polynomial","regression_sigmoidal"],
|
||||
"balls-upper-auto":["basic_stats","historical_analysis","regression_linear","regression_logarithmic","regression_exponential","regression_polynomial","regression_sigmoidal"]
|
||||
|
||||
"balls-blocked": [
|
||||
"basic_stats",
|
||||
"historical_analysis",
|
||||
"regression_linear",
|
||||
"regression_logarithmic",
|
||||
"regression_exponential",
|
||||
"regression_polynomial",
|
||||
"regression_sigmoidal"
|
||||
],
|
||||
"balls-collected": [
|
||||
"basic_stats",
|
||||
"historical_analysis",
|
||||
"regression_linear",
|
||||
"regression_logarithmic",
|
||||
"regression_exponential",
|
||||
"regression_polynomial",
|
||||
"regression_sigmoidal"
|
||||
],
|
||||
"balls-lower-teleop": [
|
||||
"basic_stats",
|
||||
"historical_analysis",
|
||||
"regression_linear",
|
||||
"regression_logarithmic",
|
||||
"regression_exponential",
|
||||
"regression_polynomial",
|
||||
"regression_sigmoidal"
|
||||
],
|
||||
"balls-lower-auto": [
|
||||
"basic_stats",
|
||||
"historical_analysis",
|
||||
"regression_linear",
|
||||
"regression_logarithmic",
|
||||
"regression_exponential",
|
||||
"regression_polynomial",
|
||||
"regression_sigmoidal"
|
||||
],
|
||||
"balls-started": [
|
||||
"basic_stats",
|
||||
"historical_analyss",
|
||||
"regression_linear",
|
||||
"regression_logarithmic",
|
||||
"regression_exponential",
|
||||
"regression_polynomial",
|
||||
"regression_sigmoidal"
|
||||
],
|
||||
"balls-upper-teleop": [
|
||||
"basic_stats",
|
||||
"historical_analysis",
|
||||
"regression_linear",
|
||||
"regression_logarithmic",
|
||||
"regression_exponential",
|
||||
"regression_polynomial",
|
||||
"regression_sigmoidal"
|
||||
],
|
||||
"balls-upper-auto": [
|
||||
"basic_stats",
|
||||
"historical_analysis",
|
||||
"regression_linear",
|
||||
"regression_logarithmic",
|
||||
"regression_exponential",
|
||||
"regression_polynomial",
|
||||
"regression_sigmoidal"
|
||||
]
|
||||
},
|
||||
"metric": {
|
||||
"elo": {
|
||||
|
22
design.kv
22
design.kv
@ -1,4 +1,4 @@
|
||||
BoxLayout:
|
||||
<Launch>:
|
||||
orientation: "vertical"
|
||||
|
||||
NavigationLayout:
|
||||
@ -51,6 +51,7 @@ BoxLayout:
|
||||
MDTextField:
|
||||
hint_text: "placeholder"
|
||||
pos_hint: {"center_y": .5}
|
||||
|
||||
BoxLayout:
|
||||
orientation: "horizontal"
|
||||
MDLabel:
|
||||
@ -84,9 +85,15 @@ BoxLayout:
|
||||
MDProgressBar:
|
||||
id: progress
|
||||
value: 50
|
||||
StatsScreen:
|
||||
name: "Stats"
|
||||
MDCheckbox:
|
||||
size_hint: None, None
|
||||
size: "48dp", "48dp"
|
||||
pos_hint: {'center_x': .5, 'center_y': .5}
|
||||
on_active: Screen.test()
|
||||
|
||||
|
||||
|
||||
#Navigation Drawer -------------------------
|
||||
MDNavigationDrawer:
|
||||
id: nav_drawer
|
||||
BoxLayout:
|
||||
@ -133,3 +140,12 @@ BoxLayout:
|
||||
screen_manager.current = "Info"
|
||||
IconLeftWidget:
|
||||
icon: "cog"
|
||||
OneLineAvatarListItem:
|
||||
text: "Stats"
|
||||
on_press:
|
||||
# nav_drawer.set_state("close")
|
||||
# screen_manager.transition.direction = "right"
|
||||
# screen_manager.fade
|
||||
screen_manager.current = "Stats"
|
||||
IconLeftWidget:
|
||||
icon: "cog"
|
38
main.py
38
main.py
@ -1,9 +1,40 @@
|
||||
from kivy.lang import Builder
|
||||
|
||||
from kivymd.uix.screen import Screen
|
||||
from kivymd.uix.list import OneLineListItem, MDList, TwoLineListItem, ThreeLineListItem
|
||||
from kivymd.uix.list import OneLineIconListItem, IconLeftWidget
|
||||
from kivy.uix.scrollview import ScrollView
|
||||
|
||||
|
||||
from kivy.uix.boxlayout import BoxLayout
|
||||
from kivy.uix.screenmanager import ScreenManager, Screen
|
||||
from kivy.uix.dropdown import DropDown
|
||||
from kivy.uix.button import Button
|
||||
from kivy.base import runTouchApp
|
||||
from kivymd.uix.menu import MDDropdownMenu, MDMenuItem
|
||||
|
||||
from kivymd.app import MDApp
|
||||
# import superscript as ss
|
||||
|
||||
# from tra_analysis import analysis as an
|
||||
import data as d
|
||||
from collections import defaultdict
|
||||
import json
|
||||
import math
|
||||
import numpy as np
|
||||
import os
|
||||
from os import system, name
|
||||
from pathlib import Path
|
||||
from multiprocessing import Pool
|
||||
import matplotlib.pyplot as plt
|
||||
from concurrent.futures import ThreadPoolExecutor
|
||||
import time
|
||||
import warnings
|
||||
|
||||
# global exec_threads
|
||||
|
||||
|
||||
# Screens
|
||||
class HomeScreen(Screen):
|
||||
pass
|
||||
class SettingsScreen(Screen):
|
||||
@ -11,11 +42,16 @@ class SettingsScreen(Screen):
|
||||
class InfoScreen(Screen):
|
||||
pass
|
||||
|
||||
class StatsScreen(Screen):
|
||||
pass
|
||||
|
||||
|
||||
class MyApp(MDApp):
|
||||
def build(self):
|
||||
self.theme_cls.primary_palette = "Red"
|
||||
return Builder.load_file("design.kv")
|
||||
|
||||
def test():
|
||||
print("test")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
@ -135,20 +135,20 @@ from concurrent.futures import ThreadPoolExecutor
|
||||
import time
|
||||
import warnings
|
||||
|
||||
global exec_threads
|
||||
# global exec_threads
|
||||
|
||||
def main():
|
||||
|
||||
global exec_threads
|
||||
# global exec_threads
|
||||
|
||||
warnings.filterwarnings("ignore")
|
||||
|
||||
while (True):
|
||||
# while (True):
|
||||
|
||||
current_time = time.time()
|
||||
print("[OK] time: " + str(current_time))
|
||||
|
||||
config = load_config("data-analysis/config.json")
|
||||
config = load_config("red-alliance-analysis\data-analysis\config.json")
|
||||
competition = config["competition"]
|
||||
match_tests = config["statistics"]["match"]
|
||||
pit_tests = config["statistics"]["pit"]
|
||||
@ -169,8 +169,8 @@ def main():
|
||||
else:
|
||||
print("[Err] Invalid number of processes, must be between -" + str(sys_max_threads) + " and " + str(sys_max_threads))
|
||||
exit()
|
||||
exec_threads = Pool(processes = alloc_processes)
|
||||
print("[OK] " + str(alloc_processes) + " threads started")
|
||||
# exec_threads = Pool(processes = alloc_processes)
|
||||
# print("[OK] " + str(alloc_processes) + " threads started")
|
||||
|
||||
apikey = config["key"]["database"]
|
||||
tbakey = config["key"]["tba"]
|
||||
@ -203,7 +203,7 @@ def main():
|
||||
set_current_time(apikey, current_time)
|
||||
print("[OK] finished all tests, looping")
|
||||
|
||||
clear()
|
||||
# clear()
|
||||
|
||||
def clear():
|
||||
|
||||
@ -314,7 +314,7 @@ def matchloop(apikey, competition, data, tests): # expects 3D array with [Team][
|
||||
variable_data.append((data[team][variable], test))
|
||||
test_filtered.append(test)
|
||||
|
||||
result_filtered = exec_threads.map(simplestats, variable_data)
|
||||
result_filtered = map(simplestats, variable_data)
|
||||
i = 0
|
||||
|
||||
result_filtered = list(result_filtered)
|
||||
|
Loading…
Reference in New Issue
Block a user