#Wariancja import statistics import matplotlib.pyplot as plt # Funkcja do obliczania wariancji i średniej def calculate_variance(group): mean = statistics.mean(group) variance = sum((x - mean) ** 2 for x in group) / (len(group)) return variance, mean # Dane punktowe dla czterech drużyn pajaki = [48, 49, 51, 52] ender_dragony = [0, 0, 100, 100] szkielety = [10, 30, 70, 90] zombie = [49, 50, 50, 51] groups = { "Pająki Parkour Masterzy": pajaki, "Ender Dragony z Ohio": ender_dragony, "Szkielety Beznogi Snajperzy": szkielety, "Zombie Ziomby": zombie } # Obliczanie wariancji i średniej dla każdej grupy variances = {} means = {} for name, group in groups.items(): var, mean = calculate_variance(group) variances[name] = var means[name] = mean print(f"{name} - Średnia: {mean}, Wariancja: {var}") # Tworzenie wykresu plt.figure(figsize=(10, 5)) markers = ['o', 's', '^', 'D'] colors = ['blue', 'red', 'green', 'purple'] for i, (name, group) in enumerate(groups.items()): x_values = list(range(len(group))) y_values_mean = [means[name]] * len(group) # Scatter plot wartości rzeczywistych plt.scatter(x_values, group, color=colors[i], label=f"{name} - Dane rzeczywiste", marker=markers[i]) # Linia średniej plt.plot(x_values, y_values_mean, color=colors[i], linestyle='dashed', label=f"{name} - Średnia") # Opisy osi i tytuł plt.xlabel("Indeks wartości") plt.ylabel("Punkty gracza") plt.title("Średnia i wartości rzeczywiste punktów dla czterech drużyn Minecraft") # Legenda plt.legend(loc='lower right') plt.show()