如何仅显示多类别绘图条形图的类别刻度并旋转它们

Tim*_*imo 6 python plotly plotly.graph-objects

  1. 我希望不使用绘图对象在多类别条形图中显示内部类别标签
  2. 此外,我希望旋转外部类别标签的标签

这是我的代码

import pandas as pd
import plotly.graph_objects as go

df = pd.DataFrame({
  "City": ["Toronto", "Toronto", "Toronto", "CPH", "CPH", "London", "London"],
  "Tower name": ["T1", "T2", "T3", "T4", "T5", "T6","T7"],
  "Height": [1.0, 1.5, 2.0, 3.0, 4.0, 2.0 ,5.0],
})

fig = go.Figure(go.Bar(x=df.loc[:,["City", "Tower name"]].T.values, y=df["Height"].values))
fig.show()
Run Code Online (Sandbox Code Playgroud)

该代码给出以下输出:

输出

期望的输出如下图所示:

期望的输出

为了隐藏内部类别,我尝试在数据中创建一个空列,如下所示,但这不起作用

df['empty'] = ""
fig = go.Figure(go.Bar(x=df.loc[:,["City", "Tower name"]].T.values, y=df["Height"].values))
fig.update_xaxes(ticktext = df['empty'])
fig.show()
Run Code Online (Sandbox Code Playgroud)

为了旋转刻度线,我使用了tickangle,但这只会旋转内部类别。城市名称保持不变

fig = go.Figure(go.Bar(x=df.loc[:,["City", "Tower name"]].T.values, y=df["Height"].values))
fig.update_xaxes(tickangle = -90)
fig.show()
Run Code Online (Sandbox Code Playgroud)

输出

这是该线程的后续问题:删除分组绘图表达条形图中的空条,以使每组条形之间的视觉距离相等