首页 > 解决方案 > 如何使用未绘制的 Dataframe 的 col 中的单独值(日期)注释 Seaborn 条形图

问题描述

我有一个 Pandas DataFrame,我在其中绘制了一个 Seaborn 条形图,如图所示(编辑:图像未出现)。

我希望在每个条上注释 date_install 值。我搜索了高低,只能看到用条本身的 y 值注释条的参考。

价格绘制在 y 轴上,part_no 绘制在 x 轴上。

这在 Seaborn 内可能吗?

谢谢

需要注释的条形图

import pandas as pd
import seaborn as sns

data1 = {
    'date_install': ['2020-02-02','2020-04-03', '2019-03-02'],
    'part_no':['D235','S222','S211'],
    'price': ['1500', '2000', '1600']
}

df = pd.DataFrame(data1)
sns.barplot(x=df.part_no, y=df.price)

标签: pythonseaborn

解决方案


import pandas as pd
import seaborn as sns

data1 = {
    'date_install': ['2020-02-02','2020-04-03', '2019-03-02'],
    'part_no':['D235','S222','S211'],
    'price': ['1500', '2000', '1600']
}
df = pd.DataFrame(data1)

plt.figure()
ax = sns.barplot(x=df.part_no, y=df.price)

for p,date in zip(ax.patches, data1['date_install']):
    ax.annotate(date, xy=(p.get_x()+p.get_width()/2, p.get_height()),
                ha='center', va='bottom')

在此处输入图像描述


推荐阅读