mirror of
https://github.com/Doctorado-ML/beflask.git
synced 2025-08-16 23:55:52 +00:00
Add datasets and enhance select
This commit is contained in:
@@ -1,16 +1,16 @@
|
||||
import os
|
||||
import json
|
||||
from benchmark.Utils import Files, Folders
|
||||
from benchmark.ResultsBase import StubReport
|
||||
from benchmark.Datasets import Datasets
|
||||
from flask_login import current_user
|
||||
from flask import Blueprint, current_app, send_file
|
||||
from flask import render_template, current_app, request, redirect, url_for
|
||||
from flask_login import login_required
|
||||
|
||||
# import json
|
||||
# import shutil
|
||||
# import xlsxwriter
|
||||
# from benchmark.ResultsFiles import Excel, ReportDatasets
|
||||
# from benchmark.Datasets import Datasets
|
||||
|
||||
results = Blueprint("results", __name__, template_folder="templates")
|
||||
|
||||
@@ -43,5 +43,59 @@ def select(compare="False"):
|
||||
|
||||
@results.route("/datasets")
|
||||
@login_required
|
||||
def datasets(compare="False"):
|
||||
return render_template("test.html")
|
||||
def datasets():
|
||||
os.chdir(current_user.benchmark.folder)
|
||||
dt = Datasets()
|
||||
datos = []
|
||||
for dataset in dt:
|
||||
datos.append(dt.get_attributes(dataset))
|
||||
return render_template("datasets.html", datasets=datos)
|
||||
|
||||
|
||||
@results.route("/best/<file_name>")
|
||||
@login_required
|
||||
def best(file_name):
|
||||
os.chdir(current_user.benchmark.folder)
|
||||
dt = Datasets()
|
||||
datos = []
|
||||
for dataset in dt:
|
||||
datos.append(dt.get_attributes(dataset))
|
||||
return render_template("datasets.html", datasets=datos)
|
||||
|
||||
|
||||
@results.route("/report/<file_name>")
|
||||
@login_required
|
||||
def report(file_name):
|
||||
os.chdir(current_user.benchmark.folder)
|
||||
with open(os.path.join(Folders.results, file_name)) as f:
|
||||
data = json.load(f)
|
||||
try:
|
||||
compare = current_app.config["COMPARE"]
|
||||
summary = process_data(file_name, compare, data)
|
||||
except Exception as e:
|
||||
return render_template("error.html", message=str(e), compare=compare)
|
||||
return render_template(
|
||||
"report.html",
|
||||
data=data,
|
||||
file=file_name,
|
||||
summary=summary,
|
||||
framework=current_app.config["FRAMEWORK"],
|
||||
back=back,
|
||||
)
|
||||
|
||||
|
||||
def process_data(file_name, compare, data):
|
||||
report = StubReport(
|
||||
os.path.join(Folders.results, file_name), compare=compare
|
||||
)
|
||||
new_list = []
|
||||
for result in data["results"]:
|
||||
symbol = report._compute_status(result["dataset"], result["score"])
|
||||
result["symbol"] = symbol if symbol != " " else " "
|
||||
new_list.append(result)
|
||||
data["results"] = new_list
|
||||
# Compute summary with explanation of symbols
|
||||
summary = {}
|
||||
for key, value in report._compare_totals.items():
|
||||
summary[key] = (report._status_meaning(key), value)
|
||||
return summary
|
||||
|
Reference in New Issue
Block a user