【发布时间】:2019-12-11 15:45:09
【问题描述】:
我有一个数据框 sales 与列 [book_name, num_orders, condition,price]。
condition 有 4 个变体。对于每个book_name,我只尝试为具有num_orders>=10 的条件绘制条形图。
所以,我愿意:
sns.barplot(x='book_name', y='price', hue='condition', data=sales[sales.num_orders>=10])
现在,我想在相应的条形图上显示每个book_name 的每个条件的num_orders。如果因为阈值 10 而没有绘制,则跳过它。
我怎样才能做到这一点?
示例数据框:
import pandas as pd
sales = pd.DataFrame.from_dict({"book_name":["Island", "Island", "Island","Island", "Cinder","Cinder", "Cinder","Cinder","Speak","Speak","Speak","Speak"],
"num_orders" : [15, 17, 3,40,57,120,5,65,34,6,7,8],
"condition":["New", "Old", "Rough","Torn","New", "Old", "Rough","Torn","New", "Old", "Rough","Torn"],
"price":[700,600,500,400,1000,900,800,700,1500,1400,1300,1200]})
当我跑步时:
sns.barplot(x='book_name',y='price',data=sales,hue='condition')
sns.barplot(x='book_name',y='price',data=sales[sales.num_orders>10],hue='condition')
我想在绘制的条形图上显示 num_orders 的值。如果没有酒吧,就没有价值。欢迎提出使用不同库的建议,但请在我使用色调并希望在这些条形上方显示其他列的值的地方发布解决方案。
【问题讨论】:
-
请也包含一个小数据集,以澄清问题
-
@anky_91 我添加了一个示例数据集。
标签: pandas matplotlib bar-chart seaborn data-analysis