在绘图中使用范围滑块时如何指定特定轨迹?
How can i designate specific trace when using range slider in plotly?
我知道首先用 make_subplot
制作图形对象是常见的方法,
用 add_trace
填充它,最后用 'update_layout' 制作范围滑块。
例如。
fig = make_subplot(rows=2, cols=1...)
fig.add_trace(go.CandleStick(...)) -----------------------------------------(first trace)
fig.add_trace(go.CandleStick(...)) -----------------------------------------(second trace)
fig.update_layout(xaxis==dict(rangeslider=dict(visible=True)))
此范围滑块通常应用于整个图形(所有第一条迹线和第二条迹线)
但是,我想知道如何将 rangeslider 分别应用于每个轨迹
我不能在 plotly 文档中使用这种方式..
下面显示了不同子图中的多个烛台。我建议最后使用 rangeslider,这样定位就可以了
import pandas as pd
import yfinance as yf
import datetime as dt
import plotly.graph_objects as go
from plotly.subplots import make_subplots
# Initial data & get dataframe
start = dt.date(2022, 3, 1)
end = dt.date(2022, 3, 7)
fig = make_subplots(
rows=2,
cols=1,
)
for i, ticker in enumerate(["MSFT", "AAPL"]):
df = yf.download(ticker, start, end, progress=False, interval="1h")
fig.add_trace(
go.Candlestick(
x=df.index,
open=df["Open"],
high=df["High"],
low=df["Low"],
close=df["Close"],
name=ticker
),
row=i + 1,
col=1,
)
fig.update_xaxes(
rangebreaks=[
dict(bounds=[16, 9.5], pattern="hour"), # hide hours from 4pm to 9:30am
]
)
fig.update_layout(xaxis={"rangeslider":{"visible":False}})
我知道首先用 make_subplot
制作图形对象是常见的方法,
用 add_trace
填充它,最后用 'update_layout' 制作范围滑块。
例如。
fig = make_subplot(rows=2, cols=1...)
fig.add_trace(go.CandleStick(...)) -----------------------------------------(first trace)
fig.add_trace(go.CandleStick(...)) -----------------------------------------(second trace)
fig.update_layout(xaxis==dict(rangeslider=dict(visible=True)))
此范围滑块通常应用于整个图形(所有第一条迹线和第二条迹线) 但是,我想知道如何将 rangeslider 分别应用于每个轨迹
我不能在 plotly 文档中使用这种方式..
下面显示了不同子图中的多个烛台。我建议最后使用 rangeslider,这样定位就可以了
import pandas as pd
import yfinance as yf
import datetime as dt
import plotly.graph_objects as go
from plotly.subplots import make_subplots
# Initial data & get dataframe
start = dt.date(2022, 3, 1)
end = dt.date(2022, 3, 7)
fig = make_subplots(
rows=2,
cols=1,
)
for i, ticker in enumerate(["MSFT", "AAPL"]):
df = yf.download(ticker, start, end, progress=False, interval="1h")
fig.add_trace(
go.Candlestick(
x=df.index,
open=df["Open"],
high=df["High"],
low=df["Low"],
close=df["Close"],
name=ticker
),
row=i + 1,
col=1,
)
fig.update_xaxes(
rangebreaks=[
dict(bounds=[16, 9.5], pattern="hour"), # hide hours from 4pm to 9:30am
]
)
fig.update_layout(xaxis={"rangeslider":{"visible":False}})