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

自定义Plotly candlestick颜色出现时间分区,如何实现同时间段混色显示

问题原因

你拆分了3个独立的蜡烛图轨迹进行渲染,Plotly会将每个轨迹的所有时间点按顺序连续排布,不同轨迹的蜡烛不会在时间轴上交叉显示,因此就出现了按颜色分片的区块效果。

解决方案

无需拆分多个轨迹,仅使用单个蜡烛图轨迹,按oi字段为每根蜡烛单独指定颜色即可,实现代码如下:

import pandas as pd
import plotly.graph_objects as go

data = pd.DataFrame(master.intradata)
# 配置oi值对应的蜡烛颜色
color_map = {
    1: "red",
    2: "green",
    3: "orange"
}
# 为每行数据匹配对应颜色
data["candle_color"] = data["oi"].map(color_map)

fig = go.Figure(go.Candlestick(
    x=data["time"],
    open=data["open"],
    high=data["high"],
    low=data["low"],
    close=data["close"],
    # 涨跌状态都使用oi对应的颜色
    increasing = {
        "fillcolor": data["candle_color"],
        "line": {"color": data["candle_color"]}
    },
    decreasing = {
        "fillcolor": data["candle_color"],
        "line": {"color": data["candle_color"]}
    }
))

fig.show()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 21:54:05