1.2.0: Refined all 6D calcs and UI/UX Experiences.

This commit is contained in:
2026-01-26 21:10:42 +08:00
parent 8cc359b0ec
commit ade29ec1e8
25 changed files with 2498 additions and 482 deletions

View File

@@ -141,15 +141,24 @@ def charts_data(steam_id):
# Radar Data (Construct from features)
features = FeatureService.get_player_features(steam_id)
radar_data = {}
radar_dist = FeatureService.get_roster_features_distribution(steam_id)
if features:
# Dimensions: STA, BAT, HPS, PTL, T/CT, UTIL
# Use calculated scores (0-100 scale)
# Helper to get score safely
def get_score(key):
val = features[key] if key in features.keys() else 0
return float(val) if val else 0
radar_data = {
'STA': features['basic_avg_rating'] or 0,
'BAT': features['bat_avg_duel_win_rate'] or 0,
'HPS': features['hps_clutch_win_rate_1v1'] or 0,
'PTL': features['ptl_pistol_win_rate'] or 0,
'SIDE': features['side_rating_ct'] or 0,
'UTIL': features['util_usage_rate'] or 0
'STA': get_score('score_sta'),
'BAT': get_score('score_bat'),
'HPS': get_score('score_hps'),
'PTL': get_score('score_ptl'),
'SIDE': get_score('score_tct'),
'UTIL': get_score('score_util')
}
trend_labels = []
@@ -166,7 +175,8 @@ def charts_data(steam_id):
return jsonify({
'trend': {'labels': trend_labels, 'values': trend_values},
'radar': radar_data
'radar': radar_data,
'radar_dist': radar_dist
})
# --- API for Comparison ---