【发布时间】:2021-12-24 02:28:00
【问题描述】:
我试图绘制两个足球运动员的不同统计数据。我希望更好的统计数据具有绿色和更差的统计数据红色。唯一的问题是在我的色阶中,一种颜色是红色,一种是绿色,两者融合。有谁知道绘制这种图表的解决方案或更好的方法?
data =[['Messi', 88]]
data2 = [['Ronaldo', -88]]
df = pd.DataFrame(data, columns=['Player', 'Dribbling'])
df2 = pd.DataFrame(data2, columns=['Player', 'Dribbling'])
fig = make_subplots(specs=[[{"secondary_y": True}]])
fig.add_trace(go.Bar(
orientation='h',
name=df['Player'],
x=df['Dribbling'],
marker_color=((df.Dribbling >= df2.Dribbling)).astype('int'),
marker_colorscale=[[0, 'red'], [1, 'green']],
),secondary_y=False)
fig.add_trace(go.Bar(
orientation='h',
name=df2['Player'],
x=df2['Dribbling'],
marker_color=((df.Dribbling >= df2.Dribbling)).astype('int'),
marker_colorscale=[[0, 'red'], [1, 'green']],
),secondary_y=True)
fig.update_layout(
barmode="group"
)
fig.update_xaxes(range=[-100, 100])
【问题讨论】:
-
我不确定颜色是否真的结合了。如果你只绘制一个条,它是相同的颜色