【问题标题】:I have 2 different bar charts with a common X axis and 2 different Y axis. I want to combine those 2 graphs using the X axis into one using python我有 2 个不同的条形图,它们有一个共同的 X 轴和 2 个不同的 Y 轴。我想使用 python 将这两个使用 X 轴的图合并为一个
【发布时间】:2021-09-29 22:01:47
【问题描述】:

第一张图片的代码:

import plotly.express as px
fig = px.bar(data, x='date', y='oi_diff_nifty15800CE',title='Oi chain of Nifty 15800CE')
fig.update_layout(width=650,height=500)
fig.show()

第二张图片的代码:

import plotly.express as px
fig = px.bar(data, x='date', y='oi_diff_nifty15800PE',title='Oi chain of Nifty 15800PE') 
fig.update_layout(width=650,height=500)
fig.show()

【问题讨论】:

    标签: python plotly data-visualization bar-chart


    【解决方案1】:
    • 您确实需要说明您在组合之外想要实现的目标
    • 有模拟数据
    • 这里有两种方法
      1. 使用add_traces() 将跟踪从一个图形添加到另一个图形
      2. 只需更改px.bar() 参数,使其生成为单个图形
    import pandas as pd
    import numpy as np
    import plotly.express as px
    
    # simulate data...
    data = pd.DataFrame({"date": pd.date_range("21-jun-2021", periods=2),
            "oi_diff_nifty15800CE": np.random.randint(5, 15, 2),
            "oi_diff_nifty15800PE": np.random.randint(5, 15, 2),})
    
    fig = px.bar(data, x="date", y="oi_diff_nifty15800CE", title="Oi chain of Nifty 15800CE")
    # build from two different figures
    fig.update_layout(width=650, height=300).add_traces(
        px.bar(data, x="date", y="oi_diff_nifty15800PE", title="Oi chain of Nifty 15800PE").data).show()
    
    # just change params...
    px.bar(data, x="date", y=["oi_diff_nifty15800PE","oi_diff_nifty15800CE"], barmode="group").update_layout(width=650, height=300).show()
    
    
    

    【讨论】:

    • 您好,感谢您的回复。实际上,我正在尝试为股票数据的看涨期权和看跌期权创建一个期权链,我想在其中合并这两个图表并并排显示看涨期权和看跌期权图表。
    • 我无法理解您所说的哪些参数需要在 px.bar() 中更改,您能指定吗?
    • 从您的评论中,我相信您想要的是将 y 定义为列表而不是字符串。代码中的第二个示例
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-18
    • 2017-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-26
    相关资源
    最近更新 更多