在 plotly 中调整数据框的小时列的 x 刻度

问题描述

plot of Timestamp Vs Temp{{3}}

我有一个 csv 文件,其中包含一个名为 hours 的列。在 plotly 中绘制折线图的 x 轴时,它以计数的形式表示,如

0K、50K、…………..250K。频率好像是1

有没有办法根据时间戳调整刻度?

提前致谢..

解决方法

  • 您描述了 250k 范围内的小时数,因此模拟了相同的时间
  • 您可以简单地将其转换为自纪元以来的纳秒数以使用时间戳轴
  • 在同一张图上绘制了两个 x 轴来演示
import plotly.graph_objects as go
import pandas as pd
import numpy as np
import plotly.express as px

df = pd.DataFrame(
    {
        "hours": range(1,250 * 10 ** 3 + 1,100),"value": np.linspace(1,10,2500) * np.random.uniform(0.9,1.1,2500),}
)
px.line(df,x="hours",y="value").update_traces(name="raw",showlegend=True).add_trace(
    go.Scattergl(
        x=(df["hours"] * 60 * 60 * 10 ** 9).astype("datetime64[ns]"),y=df["value"] + 2,name="epoch",xaxis="x2",)
).update_layout(xaxis2={"anchor": "y","domain": [0.0,1.0],"side": "top"})

enter image description here