【发布时间】:2021-12-06 06:51:06
【问题描述】:
我试图在动画散点图上显示 3 组 X/Y 坐标,其中动画键是时间。目前我的解决方法是将所有坐标集添加到同一个数据框中,但是我相信这会给我带来问题,因为我需要更改标记属性以轻松区分每个点。
这就是我生成图表的方式:
x1_trim += x2_trim
x1_trim += x3_trim
y1_trim += y2_trim
y1_trim += y3_trim
d = {
"x1": x1_trim,
"y1": y1_trim,
"time": time_trim
}
df = pd.DataFrame(d)
#Default x and y axis
x_range = [-1,1]
y_range = [-1,1]
fig = px.scatter(df, x="x1", y="y1", animation_frame="time", range_x=x_range, range_y=y_range)
fig.add_shape(type="rect",x0=-0.5, y0=-0.5, x1=0.5, y1=0.5, line=dict(color="Green",width=2))
如您所见,我将 x2/y2 和 x3/y3 数据添加到 x1/y1 列表的末尾,如何在保留动画情节的所有信息的同时将它们分开?我试图在同一个图上显示多个散点图,但从未设法让它工作。
我的解决方案尝试:
#Building the dataframe and drawing graph
d1 = {
"x": x1_trim,
"y": y1_trim,
"time": time_trim
}
d2 = {
"x": x2_trim,
"y": y2_trim,
"time":time_trim
}
d3 = {
"x": x3_trim,
"y": y3_trim,
"time": time_trim
}
dfs = {"d1": d1, "d2": d2, "d3": d3}
fig = go.Figure()
for i in dfs:
fig = fig.add_trace(go.Scatter(x = dfs[i]["x"], y = dfs[i]["y"], name = i, animation_frame=dfs[0]["time"] ))
【问题讨论】:
标签: python python-3.x plotly plotly-python