如何解决plotly.express.bar绘制条形图时条形间出现白线的问题
问题原因
你看到的透明效果确实是大量条形的微小间隙累计透出背景导致的:默认配置下Plotly会给条形保留少量间隙,数据量较小时不明显,1000条以上的条形间隙会连成一片,看起来整体呈现透明感。
修复方案
- 方案1:直接消除条形间的默认间隙,在原有绘图代码后追加布局配置,设置
bargap为0即可:
fig = px.bar(df, x='classement', y='scores',title = 'classement', hover_name = 'something', width = 1500, height = 900, color_continuous_scale='temps', color = 'classement', range_y=[0,1]) # 新增如下配置 fig.update_layout(bargap=0) fig.show()
注:你原有代码中的
facet_col_spacing是分面图表的分面间距配置,如果你没有用到分面功能,该参数不影响条形间隙。
- 方案2:若消除间隙后仍有细微缝隙透出背景,可强制关闭条形边框、设置条形完全不透明:
# 追加到绘图代码后即可 fig.update_traces( marker_line_width=0, opacity=1 )
- 方案3:如果你的x轴
classement是连续数值类型,可直接设置单个条形的宽度,让相邻条形刚好贴合无空隙:
# 若x轴相邻取值间隔为1,可设置宽度为1 fig.update_traces(width=1)
内容的提问来源于stack exchange,提问作者badinmaths
相关产品推荐
相关产品推荐

