这是我使用 Plotly lib 时的 LOWESS Smoothing 片段:
现在,我知道使用 Plotly,如果我将鼠标悬停在线上,它会为我提供 y 趋势值:
问题:我不知道如何打印这些趋势值。
我知道有一个函数 px.get_trendline_results(forecast_fig)
但它没有为我打印任何内容...
非常感谢您的帮助!
最佳答案
目前这些值不可用,但可能会在未来版本中出现! get_trendline_result
没有任何结果的原因的一点是,LOWESS 没有底层模型,它只是一种平均值。
在幕后,Plotly Express 使用 statsmodels
库来生成 LOWESS 曲线,因此您现在可以在 PX 之外运行相同的分析。
如果您想查询图中的实际值,并且没有任何映射到 color
或symbol
那么你可以这样做:
import plotly.express as px
df = px.data.tips()
fig = px.scatter(df, x="total_bill", y="tip", trendline="lowess")
print(fig.data[1].y)
但是如果你有color
设置,然后是 fig.data[ <index> ]
中的实际跟踪索引会有所不同,所以这是相当脆弱的。
关于Python/plotly : How to print y-trend values from LOWESS line?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58963970/