用python中的类绘制直方图

时间:2017-04-26 16:38:25

标签: python matplotlib plot histogram seaborn

我试图获得类似下一个的情节

enter image description here

但到目前为止我还不知道如何获得课程。我尝试过使用matplotlib和seaborn,但仍然不知道如何合并这些类。

df.age.hist()

g = sns.pairplot(df,hue =' class')

实际上我想要的是seaborn中的配对画的对角线

2 个答案:

答案 0 :(得分:0)

这样的事情?

var textbox = customerObj.CustomerName;
if (textbox.length > 100) ...

enter image description here

答案 1 :(得分:0)

所以你想要做的就是堆栈条形图(至少我称之为)。我认为Bokeh有一种直观的方式可视化这个条形图。这个原则也适用于熊猫情节和Seaborn。

散景库

在此,我展示了包含2个标签ab的简单数据框示例。您可以告诉您要在v1上堆叠,在这种情况下,每个标签都是类。在这种情况下,我们会有课程10。并且值也对应于我们想要堆叠的内容,在这种情况下为v2

显示条形图的代码段如下

import pandas as pd
from bokeh.charts import Bar, output_file, show

df = pd.DataFrame([['a', 0, 1], 
                   ['a', 1, 2], 
                   ['b', 0, 2], 
                   ['b', 1, 3]], 
               columns=['name', 'v1', 'v2'])


bar = Bar(df, stack='v1', values='v2', label='name')
output_file("bar.html")
show(bar)

enter image description here

Pandas图书馆

对于Pandas,您可以使用groupbysum代替。在这里,我们按列namev1进行分组,然后汇总列v2。稍后,我们可以堆叠使用plot方法来绘制条形图。

df_agg = df.groupby(['name', 'v1'])['v2'].sum().unstack()
df_agg.plot(kind='bar', stacked=True)