#python #pandas #matplotlib #histogram #probability
Вопрос:
Для броска шестигранной кости мне нужно случайным образом смоделировать событие 50 раз и построить гистограмму результатов для каждого числа на кости, используя количество ячеек=6
Я попробовал следующее:
import random
test_data = [0, 0, 0, 0, 0, 0]
n = 50
for i in range(n):
result = random.randint(1, 6)
test_data[result - 1] = test_data[result - 1] 1
plt.hist(test_data,bins=6)
Есть ли способ построить числа кубиков на оси x и результаты для каждого числа на кубиках на оси y?
Комментарии:
1. Использовать
seaborn.countplot
илиbarplot
Ответ №1:
Для того, что вы пытаетесь сделать, я считаю, что правильнее использовать гистограмму, поскольку различные возможные результаты (ось X) не являются частотами. Тогда для ваших целей я думаю, что лучше использовать словарь, делая что-то вроде этого:
import random
from matplotlib import pyplot as plt
test_data = {"1":0, "2":0, "3":0, "4":0, "5":0, "6":0}
n = 50
for i in range(n):
result = random.randint(1, 6)
test_data[str(result)] = 1
plt.bar(test_data.keys(), test_data.values())
plt.show()
Это должно сработать. Надеюсь, это помогло!