research/dfbnet/simulation_1/auswertung_sachsen.py
2024-11-30 09:57:00 +01:00

144 lines
3.5 KiB
Python

# %%
import googlemaps
from gmplot import GoogleMapPlotter
import json
import pandas as pd
import ast
import random
import itertools
import time
# %%
with open("data/previous_stats_road_distance.json", "r", encoding="utf-8") as f:
stats_previous_road = json.load(f)
stats_previous_road = {ast.literal_eval(k) if k != "overall" else k: v for k, v in stats_previous_road.items()}
with open("data/previous_stats_road_duration.json", "r", encoding="utf-8") as f:
stats_previous_duration = json.load(f)
stats_previous_duration = {ast.literal_eval(k) if k != "overall" else k: v for k, v in stats_previous_duration.items()}
with open("data/new_stats_road_distance.json", "r", encoding="utf-8") as f:
stats_new_road = json.load(f)
stats_new_road = {ast.literal_eval(k) if k != "overall" else k: v for k, v in stats_new_road.items()}
with open("data/new_stats_road_duration.json", "r", encoding="utf-8") as f:
stats_new_duration = json.load(f)
stats_new_duration = {ast.literal_eval(k) if k != "overall" else k: v for k, v in stats_new_duration.items()}
# %%
print(stats_previous_road['overall'])
print(stats_previous_duration['overall'])
print(stats_new_road['overall'])
print(stats_new_duration['overall'])
overall_stats = {
"previous": {
"road": stats_previous_road['overall'],
"duration": stats_previous_duration['overall']
},
"new": {
"road": stats_new_road['overall'],
"duration": stats_new_duration['overall']
}
}
# %%
import plotly.graph_objects as go
# %%
""" create bar plot for overall stats """
fig = go.Figure()
fig.add_trace(go.Bar(
x=["Distance", "Duration"],
y=[overall_stats["previous"]["road"]['total_distance'], overall_stats["previous"]["duration"]['total_distance']],
name="Previous",
marker_color='rgb(55, 83, 109)'
))
fig.add_trace(go.Bar(
x=["Distance", "Duration"],
y=[overall_stats["new"]["road"]['total_distance'], overall_stats["new"]["duration"]['total_distance']],
name="New",
marker_color='rgb(26, 118, 255)'
))
fig.update_layout(
title="Total Distances",
xaxis_title="",
yaxis_title="Distance in km / Time in m",
barmode='group'
)
fig.show()
# %%
""" create bar plot for overall stats """
fig = go.Figure()
fig.add_trace(go.Bar(
x=["Distance", "Duration"],
y=[overall_stats["previous"]["road"]['average_distance'], overall_stats["previous"]["duration"]['average_distance']],
name="Previous",
marker_color='rgb(55, 83, 109)'
))
fig.add_trace(go.Bar(
x=["Distance", "Duration"],
y=[overall_stats["new"]["road"]['average_distance'], overall_stats["new"]["duration"]['average_distance']],
name="New",
marker_color='rgb(26, 118, 255)'
))
fig.update_layout(
title="Average Distances per Team",
xaxis_title="",
yaxis_title="Distance in km / Time in m",
barmode='group'
)
fig.show()
# %%
""" create bar plot for overall stats """
fig = go.Figure()
fig.add_trace(go.Bar(
x=["Distance", "Duration"],
y=[overall_stats["previous"]["road"]['average_group_distance'], overall_stats["previous"]["duration"]['average_group_distance']],
name="Previous",
marker_color='rgb(55, 83, 109)'
))
fig.add_trace(go.Bar(
x=["Distance", "Duration"],
y=[overall_stats["new"]["road"]['average_group_distance'], overall_stats["new"]["duration"]['average_group_distance']],
name="New",
marker_color='rgb(26, 118, 255)'
))
fig.update_layout(
title="Average Distance per Group",
xaxis_title="",
yaxis_title="Distance in km / Time in m",
barmode='group'
)
fig.show()
# %%