我有一些代码可以打开Excel文件作为数据框。基于此,绘制了条码。但是,我无法在栏中显示这些值。 excel的列标题在图例中显示的文件之间变化。
数据框如下所示:
40+ 50+ 60+
e .35 .45 .28
n .28 .52 .27
尝试ax.annotate
非常感谢
“”“代码”“”
import pandas as pd
import numpy as np
from pandas import ExcelWriter
from pandas import ExcelFile
df = pd.read_excel('C://1/table/c.xlsx', sheet_name='Sheet1')
print (df)
ax = df.plot.barh(width=0.9, fontsize='xx-large', figsize=(20,20), color=
['#a6979C', '#BFB0BA', '#D9CCD9', '#bebabf', '#eae4f2'] )
ax.legend(bbox_to_anchor=(1,1),loc='best', fontsize='30')
预期结果:水平条,条中的值
答案 0 :(得分:1)
我复制了您的代码,并添加了“;”经过两个指示并获得正确的结果 (仅水平条),使用 Jupyter Notebook 。
所以您应该添加分号。
我更改了一些数值并添加了值的叠加 在每个栏上,通过以下方式对其进行注释:
ax = df.plot.barh(width=0.7, fontsize='16', figsize=(11,5));
ax.legend(bbox_to_anchor=(1, 0.3), fontsize='14');
for p in ax.patches:
w = p.get_width()
ax.annotate(f'{w:.2f}', (w * 0.5, p.get_y() + 0.1))
您的环境中的实验,调整各种数值参数 在您认为适当的时候。