繁体   English   中英

Plotly:如何在子图上使用 plot 烛台图?

[英]Plotly: How to plot candlestick charts on a subplot?

我正在尝试 plot 一个包含 14 个加密货币数据烛台图的子图。 https://www.kaggle.com/c/g-research-crypto-forecasting

但是,它似乎无法正确显示图形。

这是我的代码:

from plotly import subplots
import plotly.graph_objects as go

fig = subplots.make_subplots(rows=7,cols=2)

for ix,coin_name in enumerate(asset_details["Asset_Name"]):
   coin_df = crypto_df[crypto_df["Asset_ID"]==asset_names_dict[coin_name]].set_index("timestamp")
   coin_df_mini = coin_df.iloc[-100:]
   column = lambda ix: 1 if ix % 2 == 0 else 2
   candlestick = go.Candlestick(x=coin_df_mini.index, open=coin_df_mini['Open'], high=coin_df_mini['High'], low=coin_df_mini['Low'], close=coin_df_mini['Close'])
   fig = fig.add_trace(candlestick, row=((ix//2) + 1), col=column(ix))
   fig.update_layout(xaxis_rangeslider_visible=False)

fig.update_layout(title_text="Candlestick Charts", height=2800)
fig.show()

这就是问题所在:

范围滑块问题

不管我 plot 这个图有没有范围滑块,它总是变形。

您需要在子图中创建的 x 轴单位上隐藏 slider。 我的回答是手动完成所有子图。 我现在没有时间处理这个问题,但是还有一种方法可以在循环过程中更新 output 内容。

fig.update_layout(xaxis1=dict(rangeslider=dict(visible=False)),
                  xaxis2=dict(rangeslider=dict(visible=False)),
                  xaxis3=dict(rangeslider=dict(visible=False)),
                  xaxis4=dict(rangeslider=dict(visible=False)),
                  xaxis5=dict(rangeslider=dict(visible=False)),
                  xaxis6=dict(rangeslider=dict(visible=False)),
                  xaxis7=dict(rangeslider=dict(visible=False)),
                  xaxis8=dict(rangeslider=dict(visible=False)),
                  xaxis9=dict(rangeslider=dict(visible=False)),
                  xaxis10=dict(rangeslider=dict(visible=False)),
                  xaxis11=dict(rangeslider=dict(visible=False)),
                  xaxis12=dict(rangeslider=dict(visible=False)),
                  xaxis13=dict(rangeslider=dict(visible=False)),
                  xaxis14=dict(rangeslider=dict(visible=False)),
                 )

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM