【发布时间】:2020-07-13 16:34:28
【问题描述】:
我有一个这样的数据框:
chart = pd.DataFrame({'test1_bottom': {'Information Technology': 0.2533668392286677,
'Health Care': 0.15018887027604233,
'Financials': 0.11250374171121448,
'Communication Services': 0.10598698851685082,
'Consumer Discretionary': 0.09930980115655588,
'Industrials': 0.08341663798744221,
'Consumer Staples': 0.077755633372036,
'Utilities': 0.03633802369644037,
'Real Estate': 0.030599694393051324,
'Energy': 0.026211182457138587},
'test1_top': {'Information Technology': 0.2533668392286677,
'Health Care': 0.15018887027604233,
'Financials': 0.11250374171121448,
'Communication Services': 0.10598698851685082,
'Consumer Discretionary': 0.09930980115655588,
'Industrials': 0.08341663798744221,
'Consumer Staples': 0.077755633372036,
'Utilities': 0.03633802369644037,
'Real Estate': 0.030599694393051324,
'Energy': 0.026211182457138587}})
我试图在每个子组中的条之间添加空格,因为我在每个条上的值标签是重叠的:
figsize=(9,4)
ax = chart.iloc[::-1].plot.barh(figsize=figsize, color=['#0574A0','#FF5233'],width=0.5);
for p in ax.patches:
v = ax.annotate("{:,.2%}".format(p.get_width()), (p.get_width(), p.get_y() + p.get_height()/4), xytext=(4, -1),
textcoords='offset points',ha='left');
plt.legend(loc='lower right',fontsize=10)
plt.tight_layout(pad=-5)
【问题讨论】:
标签: pandas matplotlib bar-chart