我在Python中有一个计数表作为数据框,我想将我的发行版绘制成一个箱形图。 E.g:
df=pandas.DataFrame.from_items([('Quality',[29,30,31,32,33,34,35,36,37,38,39,40]), ('Count', [3,38,512,2646,9523,23151,43140,69250,107597,179374,840596,38243])])
我通过重复我的质量值来解决它。但我认为这不是一个好方法,我的数据框架变得非常大。
在R中有一个衬垫:
ggplot(df, aes(x=1,y=Quality,weight=Count)) + geom_boxplot()
这将输出:!Boxplot from R 1
答案 0 :(得分:1)
你想在这看什么?下面的箱线图将返回下图。
import matplotlib.pyplot as plt
import pandas as pd
%matplotlib inline
df=pd.DataFrame.from_items([('Quality',[29,30,31,32,33,34,35,36,37,38,39,40]), ('Count', [3,38,512,2646,9523,23151,43140,69250,107597,179374,840596,38243])])
plt.figure()
df_box = df.boxplot(column='Quality', by='Count',return_type='axes')
如果你想看看你的质量分布加权计数,你可以尝试绘制一个直方图:
plt.figure()
df_hist = plt.hist(df.Quality, bins=10, range=None, normed=False, weights=df.Count)