pandas dataframe条形图在条形图之间放置空间

pandas dataframe条形图在条形图之间放置空间,pandas,matplotlib,dataframe,bar-chart,seaborn,Pandas,Matplotlib,Dataframe,Bar Chart,Seaborn,所以我希望我的图像是这样的 但现在我的形象是这样的 如何在不将条形宽度设为1的情况下减少条形之间的间距 这是我的密码: plot=repeat.loc['mean'].plot(kind='bar',rot=0,alpha=1,cmap='Reds', yerr=repeat.loc['std'],error_kw=dict(elinewitdh=0.02,ecolor='grey'), align='center',width=0.2,grid=None) p

所以我希望我的图像是这样的

但现在我的形象是这样的

如何在不将条形宽度设为1的情况下减少条形之间的间距

这是我的密码:

plot=repeat.loc['mean'].plot(kind='bar',rot=0,alpha=1,cmap='Reds',
       yerr=repeat.loc['std'],error_kw=dict(elinewitdh=0.02,ecolor='grey'),
       align='center',width=0.2,grid=None)

plt.ylabel('')
plt.grid(False)
plt.title(cell,ha='center')
plt.xticks([])
plt.yticks([])
plt.ylim(0,120)
plt.tight_layout()`

如果pandas或seaborn的顶级功能不能提供所需的结果,请从头开始绘图!:

import seaborn.apionly as sns
import scipy as sp
import matplotlib.pyplot as plt

# some fake data
data = sp.randn(10,10) + 1
data = data[sp.argsort(sp.average(data,axis=1))[::-1],:]
avg = sp.average(data,axis=1)
std = sp.std(data,axis=1)

# a practical helper from seaborn to quickly generate the colors
colors = sns.color_palette('Reds',n_colors = data.shape[0])

fig, ax = plt.subplots()

pos = range(10)
ax.bar(pos,avg,width=1)
for col,patch in zip(colors,ax.patches):
    patch.set_facecolor(col)
    patch.set_edgecolor('k')

for i,p in enumerate(pos):
    ax.plot([p,p],[avg[i],avg[i]+std[i]],color='k',lw=2, zorder=-1)

你为什么不想改变酒吧的宽度?我用其他方法解决了这个问题。但是您知道如何更改错误栏,使其仅显示上界,而不是上界和下界吗?ThanksI用别人的解决方案解决了这个问题。你的解决方案实际上对我没什么帮助。谢谢你的回答。啊,我误解了你。NoNICKNAME考虑把你的解决方案添加为编辑或响应,如果你找到了解决方案。