Plotly 如何将 x 轴移动到顶部,将 y 轴移动到右侧?

Plotly How to move x-axis to top and y-axis to the right?

有没有办法将 Plotly-plot 的 xtick 标签移动到图的“顶部”
和 ytick 标签到图的“右边”?

在上图中,我主要是想将 xtick 标签移到顶部,将 ytick 标签移到右边。我知道这不是首选方式,但我只想知道这是否可行。

这是一个示例代码,用于重新构建上面的图,

import plotly.graph_objects as go


fig = go.Figure()

fig.add_trace(go.Bar(
    x=["Apples", "Oranges", "Watermelon", "Pears"],
    y=[3, 2, 1, 4]
))

fig.update_layout(
    autosize=False,
    width=500,
    height=500,
    yaxis=dict(
        title_text="Y-axis Title",
        ticktext=["Very long label", "long label", "3", "label"],
        tickvals=[1, 2, 3, 4],
        tickmode="array",
        titlefont=dict(size=30),
    )
)

fig.update_yaxes(automargin=True)

fig.show()

您可以使用:

fig.update_layout(
    xaxis={'side': 'top'}, 
    yaxis={'side': 'right'}  
)

剧情:

完整代码:

import plotly.graph_objects as go


fig = go.Figure()

fig.add_trace(go.Bar(
    x=["Apples", "Oranges", "Watermelon", "Pears"],
    y=[3, 2, 1, 4]
))

fig.update_layout(
    autosize=False,
    width=500,
    height=500,
    yaxis=dict(
        title_text="Y-axis Title",
        ticktext=["Very long label", "long label", "3", "label"],
        tickvals=[1, 2, 3, 4],
        tickmode="array",
        titlefont=dict(size=30),
    )
)

fig.update_layout(
    xaxis={"mirror" : "allticks", 'side': 'top'}, 
    yaxis={"mirror" : "allticks", 'side': 'right'}  
)

fig.show()