Pandas Seaborn条形图在打印时会混淆列值
好吧,这让我抓狂,我不知道这是怎么回事,这应该是一个非常简单的海生条形图。我有以下数据帧:Pandas Seaborn条形图在打印时会混淆列值,pandas,seaborn,data-visualization,bar-chart,Pandas,Seaborn,Data Visualization,Bar Chart,好吧,这让我抓狂,我不知道这是怎么回事,这应该是一个非常简单的海生条形图。我有以下数据帧: Users Count App Name 0 224244 Facebook 1 202253 Messenger – Text and Video Chat for Free 2 164995 Google Play Games 3 151713 Instagram 4 132949 Google Pay 5 126474 Netflix 6 122877 Pi
Users Count App Name
0 224244 Facebook
1 202253 Messenger – Text and Video Chat for Free
2 164995 Google Play Games
3 151713 Instagram
4 132949 Google Pay
5 126474 Netflix
6 122877 Pinterest
7 110071 Amazon Shopping
8 108515 Samsung Pay
9 108204 Pandora Music
10 105865 Snapchat
11 103858 Pinterest
12 101676 Uber
13 94741 Yelp: Food Shopping Services Nearby
14 83623 Wish - Shopping Made Fun
15 83327 Spotify Music
16 81678 WhatsApp Messenger
17 76064 Amazon Prime Video
18 68823 eBay: Shop Deals - Home Fashion & Electronics
19 64677 Amazon Shopping
20 59513 Walmart
我所做的就是用它画出一个海生的酒吧图:
plt.figure(figsize=(8,6))
sns.barplot(x='Users Count', y='App Name', data=pop_apps_df, alpha=0.8, ci=None)
plt.title('20 Most Popular Apps')
plt.ylabel('App Name', fontsize=12)
plt.xlabel('Number of Unique MAIDs', fontsize=12)
plt.show()
然而,该图在某种程度上没有从“用户计数”中提取与“应用程序名称”列上的行相等的正确值(注意亚马逊购物栏)。到底是什么导致了这一切?我该怎么办??我到处找,找不到答案或解决办法
亚马逊购物
在您的数据框中以不同的值出现两次(第7行和第19行)。删除重复的值,一切都应该正常
此外,您可能需要增加绘图高度以显示所有行。
亚马逊购物
在数据框中以不同的值出现两次(第7行和第19行)。删除重复的值,一切都应该正常
此外,您可能希望增加打印高度以显示所有行。每个文档:
条形图表示对数值变量的中心趋势的估计
同样重要的是要记住,条形图只显示平均值(或其他估计值)
因为“亚马逊购物”出现了两次,所以低值和高值的平均值反映在条形图中。要解决,考虑两个解决方案:
numpy.sum
)调整默认的estimator
参数:
sns.barplot(x='Users Count', y='App Name', data=pop_apps_df,
estimator=np.sum, alpha=0.8, ci=None)
pop_apps_agg = pop_apps_df.groupby(['App Name'], as_index=False)["Users Count"].sum()
sns.barplot(x='Users Count', y='App Name', data=pop_apps_agg, alpha=0.8, ci=None)
也可以考虑在代码< > PLT.Sub()/代码>之前添加<代码> PLT.ClultTyLayOutAuthor(<代码> >)。因此,y轴标签越适合于绘图。
每个文档: 条形图表示对数值变量的中心趋势的估计 同样重要的是要记住,条形图只显示平均值(或其他估计值) 因为“亚马逊购物”出现了两次,所以低值和高值的平均值反映在条形图中。要解决,考虑两个解决方案:numpy.sum
)调整默认的estimator
参数:
sns.barplot(x='Users Count', y='App Name', data=pop_apps_df,
estimator=np.sum, alpha=0.8, ci=None)
pop_apps_agg = pop_apps_df.groupby(['App Name'], as_index=False)["Users Count"].sum()
sns.barplot(x='Users Count', y='App Name', data=pop_apps_agg, alpha=0.8, ci=None)
也可以考虑在代码< > PLT.Sub()/代码>之前添加<代码> PLT.ClultTyLayOutAuthor(<代码> >)。因此,y轴标签越适合于绘图。