【问题标题】:plotting stock data in plot.ly在 plot.ly 中绘制股票数据
【发布时间】:2018-07-25 18:49:28
【问题描述】:

我正在尝试使用 plot.ly 绘制烛台和简单移动平均线数据 正如您在图表中看到的,在实际上没有可用的日期/价格数据的地方绘制了一条空值线。该图表的数据也会显示出来。

所以在图表中,您可以看到还绘制了非交易时间。如何避免这种情况?

【问题讨论】:

  • 请将数据和代码显示为文本,而不是图像。图表很好
  • 我无法正确发布数据框输出数据。它不可读。所以贴了一张桌子的图片。我会记住这一点。谢谢
  • 您发布了一张控制台输出的图片。复制它并将其格式化为代码。如果我想在我的机器上创建一个测试,我无法复制图像。

标签: python plotly candlestick-chart


【解决方案1】:

Plotly 似乎不支持在没有数据的情况下仅隐藏空白,正如您从 discussion in the plotly community 中看到的那样

SO 的答案通过为数据为空的每个索引输入显式空值来消除差距。

【讨论】:

  • 在我的情况下,输入数据来自历史蜡烛数据,不幸的是我无法添加空值或以任何方式修改输入数据。作为插入空值的解决方法,我必须首先将历史蜡烛数据捕获到 csv 中并添加空值,然后在绘图之前将该 csv 读回数据帧。
  • @Shivaprashanth。那没有意义。数据框是可写的。如果你的不是,请复制它。在内存中执行操作。
  • 我想这就是我必须做的。会尝试的。谢谢@MadPhysicist
【解决方案2】:

您可以使用以下对我有帮助的代码

fig = go.Figure(data=[go.Candlestick(
x=dataset_5.index,
open=dataset_5['open'], 
high=dataset_5['high'],
low=dataset_5['low'], 
close=dataset_5['close'])])
fig.update_xaxes(rangeslider_visible=True,
    rangebreaks=[
        # NOTE: Below values are bound (not single values), ie. hide x to y
        dict(bounds=["sat", "mon"]),  # hide weekends, eg. hide sat to before mon
        dict(bounds=[18, 9.0], pattern="hour"),  # hide hours outside of 9.30am-4pm
        # dict(values=["2019-12-25", "2020-12-24"])  # hide holidays (Christmas and 
        New Year's, etc)
     ]
  )
  fig.update_layout(xaxis_rangeslider_visible=True)
  fig.show()

【讨论】:

    猜你喜欢
    • 2016-05-30
    • 1970-01-01
    • 2021-09-04
    • 2012-03-06
    • 1970-01-01
    • 2011-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多