【问题标题】:Iterate over unique values in a column(a) and create plots (x,y) for each unqiue value in column a迭代列 (a) 中的唯一值并为列 a 中的每个唯一值创建图 (x,y)
【发布时间】:2022-01-21 02:24:11
【问题描述】:

我有一个数据框 (DF),其中 Stock 作为具有唯一值的列名之一,例如 ['AAPL', 'MSFT']。 DF 中的其他列是日期和价格。

我正在尝试根据应用于 DataFrame 的过滤条件创建一个线图,以便我可以在一个图上分别获得两条单独的线,分别用于 Stock = 'AAPL' 和 'MSFT' 用于 Date Vs。价格。

换句话说,我正在尝试使用 Stock 列上的条件来过滤/子集数据框 DF,然后自动/迭代 Stock 唯一值以在同一图上绘制(日期与价格)。

有一种更长的方法可以通过在 Stock 上应用条件然后绘制它们来创建两个临时数据框,但我试图避免这种解决方案并自动化代码以迭代 Stock 列中的 unqiue 值并为所有个人价值观。

【问题讨论】:

    标签: python pandas dataframe matplotlib plot


    【解决方案1】:

    Seaborn 允许您将分类列 Stock 作为 hue 参数传递,从而为 df 中的每只股票生成不同颜色的线,从而简化操作。

    import seaborn as sns
    
    sns.lineplot(data=df, x='Date',y='Price', hue='Stock')
    

    【讨论】:

      猜你喜欢
      • 2020-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-11
      • 1970-01-01
      • 2019-04-13
      • 1970-01-01
      相关资源
      最近更新 更多