【问题标题】:Plot specific rows of a pandas dataframe绘制熊猫数据框的特定行
【发布时间】:2016-09-16 22:05:49
【问题描述】:

我有一个包含三列的 pandas 数据框,我正在使用以下代码分别绘制每一列:

data.plot(y='value')

生成这样的图形:

我需要的是这些值的一个子集,而不是全部。例如,我想在第 500 到 1000 行而不是从 0 到 3500 处绘制值。知道如何告诉绘图函数只选择那些吗?

谢谢

【问题讨论】:

    标签: python pandas plot


    【解决方案1】:

    使用iloc 分割你的df:

    data.iloc[499:999].plot(y='value')
    

    这将从第 500 行切到但不包括第 1000 行

    例子:

    In [35]:
    df = pd.DataFrame(np.random.randn(10,2), columns=list('ab'))
    df.iloc[2:6]
    
    Out[35]:
              a         b
    2  0.672884  0.202798
    3  0.514998  1.744821
    4 -1.982109 -0.770861
    5  1.364567  0.341882
    
    df.iloc[2:6].plot(y='b')
    

    【讨论】:

      【解决方案2】:

      如果您有两个数据框,例如 'tst''ptst',并且只想显示两个 的某些值(范围相同在两者中) 在同一张图上。以下将有所帮助:

      import matplotlib.pyplot as plts
      
      plts.figure(figsize=(10,5))
      plts.plot(tst['Price'])
      plts.plot(ptst['Price'])
      

      【讨论】:

      • 它如何绘制一定数量的行?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-10-22
      • 2016-01-07
      • 2018-05-20
      • 2017-10-10
      • 2020-01-14
      • 2017-05-28
      • 2017-06-09
      相关资源
      最近更新 更多