Python 在绘图图形中添加多个过滤器尺寸

Python 在绘图图形中添加多个过滤器尺寸,python,plotly,data-visualization,Python,Plotly,Data Visualization,我为游戏构建数据集,显示演员随着时间产生的价值过程。我想用Plotly来绘制这些数据,我想弄清楚如何自定义过滤器尺寸,以便能够在一个绘图中绘制多个游戏的数据 我的数据看起来如何 我的数据集中有一些列描述了一条信息。对于每个游戏(columngame),我为每个演员(columnname)的特定回合(columnround)提供了一个金额(columnvalue) 为了绘制每个演员随时间(轮数)的“价值”发展,我使用Plotly为不同的游戏创建了一个带有滑块的线条图。这看起来像是随机数据 impo

我为游戏构建数据集,显示演员随着时间产生的价值过程。我想用Plotly来绘制这些数据,我想弄清楚如何自定义过滤器尺寸,以便能够在一个绘图中绘制多个游戏的数据

我的数据看起来如何

我的数据集中有一些列描述了一条信息。对于每个游戏(column
game
),我为每个演员(column
name
)的特定回合(column
round
)提供了一个金额(column
value

为了绘制每个演员随时间(轮数)的“价值”发展,我使用Plotly为不同的游戏创建了一个带有滑块的线条图。这看起来像是随机数据

import numpy as np
import pandas as pd
import plotly.express as px

n_rounds = 30

actor_column = []
round_column = []
value_column = []
game_column = []

actor_names = ["A", "B", "C"]

X = range(n_rounds)
for game_id in range(1, 5):
    Ys = []
    for actor_name in actor_names:
        Y = np.random.randint(0, 50000, n_rounds - 1)
        Ys.append(Y)

    for idx, Y in enumerate(Ys):
        for x, y in zip(X, Y):
            actor_column.append(actor_names[idx])
            round_column.append(x)
            value_column.append(y)
            game_column.append(game_id)

data = {
    "game": game_column,
    "actor": actor_column,
    "round": round_column,
    "value": value_column
}

df = pd.DataFrame(data)

fig = px.line(
    df,
    x="round",
    y="value",
    color="actor",
    animation_frame="game",
)

fig.show()

在滑块的帮助下,我可以选择要显示的游戏。通过使用右边的演员过滤器,我可以选择要显示的演员。这很接近我想要的

问题

如何为游戏添加额外的过滤维度,而不是使用滑块。与现有的
actor
过滤器类似,我还希望为我的情节设置
game
过滤器。例如,我希望能够使用plotly为所有游戏的演员显示情节

我在想这样的事情(不一定使用不同的破折号类型):

注: 必须有一个更好的解决方案,而不是在游戏中使用不同的划线,并将游戏和参与者的所有组合作为筛选值,如图所示
fig=px.line(df,x=“round”,y=“value”,color=“actor”,line_-dash=“game”)