我想用python中的plotly创建一个时间序列散点图,例如,我有两列数据"a"和"b",列中的每个条目都是事件的日期和时间.我想画一个图,时间在x轴上,y轴只显示列数据的来源,同一列的所有数据点都在一条水平线上.
我不知道如何绘制,因为y轴没有值,我在下面的代码中创建了一些接近我想要的东西,通过创建值列"value\u a"和"value\u b",并将列"a"中的所有点的值设置为1,"b"中的点设置为2,但这在有许多列和数据点的情况下不起作用.谢谢
import plotly.graph_objects as go
import pandas as pd
df = pd.DataFrame(dict(
a=["2020-01-10", "2020-02-10", "2020-03-10", "2020-04-10", "2020-05-10", "2020-06-10"],
value_a=[1,1,1,1,1,1],
b=["2020-01-05", "2020-02-15", "2020-03-18", "2020-08-10", "2021-05-10", "2021-06-10"],
value_b=[2,2,2,2,2,2]
))
print(df)
fig = go.Figure()
fig.add_trace(go.Scatter(
mode="markers", x=df["a"], y=df["value_a"],
))
fig.add_trace(go.Scatter(
mode="markers", x=df["b"], y=df["value_b"],
))
fig.update_xaxes(showgrid=True, ticklabelmode="period")
fig.show()