此问题已在此处有答案:
How to add value labels on a bar chart(7个回答)
5天前关闭。
我是matplotlib的新手,在过去的3天里,我一直在尝试制作一个非常简单的水平条形图:
在Y
中,它携带一个products
列表,在X
days_prod
中,它是特定产品的剩余天数。
我不能做的是在每个条形图的末尾加上产品完成的日期,这是在eo_inv
中获得的。
我知道这个论坛里有几个关于这个主题的帖子,但我不知道如何使它们适应我的需要。
代码如下:
from datetime import date, timedelta
import matplotlib.pyplot as plt
days_prod = [292, 268, 273, 249, 191, 251]
prods = ['milk', 'butter', 'curd', 'panner', 'cheese', 'yogurt']
eo_inv = [
str(date.today() + timedelta(days=x-1))
for x in days_prod
]
# at 2023/10/17 eo_inv results in:
# eo_inv = ['2024-08-03', '2024-07-10', '2024-07-15', '2024-06-21', '2024-04-24', '2024-06-23']
plt.barh(prods, days_prod)
plt.title('Inventory')
plt.xlabel('Days Left')
plt.ylabel('Products')
plt.show()
1条答案
按热度按时间a0x5cqrl1#
也许你正在寻找一些东西,比如迭代
days_prod
中的所有条目,并在条的末尾添加eo_inv
中的相应条目: