You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

cufflinks QuantFig蜡烛图iplot(asFigure=True)时自定义子图高度

核心逻辑:QuantFig.iplot(asFigure=True)返回的是标准Plotly Figure对象,直接修改Plotly原生布局的行高参数即可实现高度占比调整,不会破坏图表右上角的编辑、缩放、导出等所有原生交互功能。

实现步骤

  • 保留原有添加技术指标、生成fig的代码逻辑不变
  • 在生成fig对象后,调用update_layout方法传入自定义的height_ratios(部分老版本Plotly参数名为row_heights)参数,按子图从上到下的顺序设置高度比例,所有比例值相加等于1即可。

修改后可直接复用的代码

import cufflinks as cf

qf = cf.QuantFig(df_ticker, kind='candlestick', legend='right', name=ticker)

# 添加技术指标 原有逻辑完全保留
qf.add_rsi(periods=20, color='java')
qf.add_macd(fast_period=12, slow_period=26, signal_period=9)
qf.add_volume()

# 生成fig对象 原有配置参数全部保留
self.fig = self.qf.iplot(asFigure=True, dimensions=(1000, 600), up_color='green', down_color='red')

# 新增行高配置 顺序从上到下对应:[主蜡烛图, RSI子图, MACD子图, 成交量子图]
# 比例可按需调整,所有数值总和为1即可
self.fig.update_layout(
    height_ratios=[0.5, 0.17, 0.17, 0.16]
)

兼容说明:如果运行后高度调整未生效,把参数height_ratios替换为row_heights即可适配对应版本的Plotly依赖。如果需要主图占比更高,可把第一个数值调大到0.6,剩余三个指标子图平分剩下0.4的高度即可。

内容的提问来源于stack exchange,提问作者raphael

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 21:12:19