You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Plotly中如何添加与默认网格颜色一致的垂直线

Plotly中如何添加与默认网格颜色一致的垂直线

嗨,看你提供的示例图,现在垂直线的颜色和默认网格还不太匹配,我来教你怎么解决这个问题~

你不用手动指定lightgray这种固定颜色,Plotly的模板里已经内置了网格的颜色参数,直接调用就好啦!因为你用了plotly_dark模板,默认网格的颜色是模板预设的,我们可以直接从图表布局里获取这个颜色值,再把它传给垂直线的line_color参数。这样不管你后续切换什么模板,垂直线的颜色都会自动和网格保持一致,不用每次手动调整颜色代码。

示例图表

修改后的代码如下:

import plotly.graph_objects as go

def main():
    x = [1, 2, 3, 4, 5]
    y = [10, 11, 12, 11, 9]

    fig = go.Figure()

    fig.add_trace(go.Scatter(x=x, y=y, mode='lines'))
    # 直接获取x轴网格的默认颜色,赋值给垂直线
    fig.add_vline(x=2.5, line_width=.5, line_dash="solid", line_color=fig.layout.xaxis.gridcolor)

    fig.update_layout(title='demo',template="plotly_dark",xaxis_title='x', yaxis_title='y')

    fig.show()
    return

if __name__ == "__main__":
    main()

如果想要匹配y轴的网格颜色,只需要把fig.layout.xaxis.gridcolor换成fig.layout.yaxis.gridcolor就行,是不是很方便?

备注:内容来源于stack exchange,提问作者lucky1928

火山引擎 最新活动