【发布时间】:2021-09-08 02:03:26
【问题描述】:
我有一个包含多列(列代表月份)的数据框,每一行都是一个组,例如
OCT20 NOV20 DEC20 JAN21
A 20 24 19 18
B 45 29 33 46
C 19 11 13 11
(这只是获得可重复解决方案的虚拟数据)。
我正在绘制这个数据框的线图,列作为 x-ticks,索引中的每一行作为图中的一条线,每个月每行的值是 y 值。
以下是我用于绘图的代码,效果很好。但是,我想用数据框中的值注释每个数据点,但是使用下面的代码,我将所有数据点放在一个地方。
%matplotlib inline
labels = ['OCT20', 'NOV20', 'DEC20', 'JAN21', 'FEB21', 'MAR21']
ax = df.T.plot(grid = True, figsize=(20,15), marker='o')
for col in df.columns:
for id, val in enumerate(df[col]):
ax.text(id, val, str(val))
x = [0,1,2,3,4,5]
plt.xticks(x, labels, rotation=45)
plt.show()
但我希望每个数据点与图中的正确标记相对应。
有人知道怎么解决吗?
【问题讨论】:
标签: python pandas dataframe matplotlib line-plot