python 项目2 数据可视化3 2021-02-26

安装plotly


from random import randint

class Die():

    """A class representing a single die."""

    def __init__(self, num_sides=6):

        """骰子有六个面"""

        self.num_sides = num_sides

    def roll(self):

        """"返回随机值"""

        return randint(1, self.num_sides)



from plotly.graph_objs import Bar, Layout

from plotly import offline

from die import Die

# 创建一个D6.

die = Die()

# 掷骰子并将结果存储于列表

results = []

for roll_num in range(1000):

    result = die.roll()

    results.append(result)

# 分析结果

frequencies = []

for value in range(1, die.num_sides+1):

    frequency = results.count(value)  # 计算点数在结果中出现多少次

    frequencies.append(frequency)

# 对结果可视化

x_values = list(range(1, die.num_sides + 1))

data = [Bar(x=x_values, y=frequencies)]  # 绘制数据集

x_axis_config = {'title': '结果'}

y_axis_config = {"title": '结果的频率'}

my_layout = Layout(title='掷一个D6 1000次的结果',

                   xaxis=x_axis_config, yaxis=y_axis_config)  # 图标布局

offline.plot({'data': data, 'layout': my_layout},

             filename='d6.html')  # 数据集和 图标布局



你可能感兴趣的:(python 项目2 数据可视化3 2021-02-26)