如何在python中使用数据帧中的x和y轴绘制直方图

时间:2017-08-15 15:57:48

标签: python pandas histogram

我想用pandas数据帧绘制直方图。我的数据框中有四列,但我想选择其中两列并绘制它。我插入了xaxis和yaxis值并绘制了三个子历史图。

以下是我的代码的样子:

fig = plt.figure(figsize=(9,7), dpi=100)

h = plt.hist(x=df_mean_h ['id'], y=df_mean_h ['mean'], 
color='red', label='h')

c = plt.hist(x=df_mean_c ['id'], y=df_mean_c ['mean'], 
color='blue', label='c')

o = plt.hist( x=df_mean_o['id'], y=df_mean_o ['mean'], 
color='green', label='o')

plt.show()

当我尝试查看直方图时,它在屏幕上不显示任何内容。我该如何修复我的代码?

1 个答案:

答案 0 :(得分:1)

  1. 您需要使用plt.show()

  2. 显示情节
  3. plt.hist()的工作方式与散点或系列不同。您无法发送x =和y =

  4. https://matplotlib.org/1.2.1/examples/pylab_examples/histogram_demo.html

    要使您的示例正常工作,只需将plt.hist发送到一列即可创建图表:

    import numpy as np
    import matplotlib.pyplot as plt
    import pandas as pd
    d = {'one' : pd.Series([1., 2., 3.], index=['a', 'b', 'c']),
     'two' : pd.Series([1., 2., 3.], index=['a', 'b', 'c'])}
    DF = pd.DataFrame(d)
    fig = plt.figure(figsize=(9,7), dpi=100)
    
    plt.hist(DF['two'])
    
    plt.show()