【问题标题】:How to MatPlotLib Plot two DataFrames?MatPlotLib 如何绘制两个 DataFrame?
【发布时间】:2019-05-10 22:54:04
【问题描述】:

我有两个 DataFrame northsouth。每个都有相同的行和列。我想在一个图中将两个 DataFrame 的速度列绘制为条形图。我正在尝试这个:

ax = south['speed'].plot(kind='bar', color='gray')
north['speed'].plot(kind = 'bar', color='red', ax=ax)
plt.show()

但它只绘制最后一个数据帧,即只有 north 数据帧。你能帮帮我吗?

【问题讨论】:

    标签: python pandas matplotlib plot


    【解决方案1】:

    1) 如果您只想绘制“速度”列,则必须连接数据框,例如:

    df = pd.concat([north, south]) 
    

    df = north.append(south)
    

    2) 如果您想比较两个数据帧的“速度”列,您必须沿轴 = 1 连接数据帧,例如:

    df = pd.concat([north, south], axis=1, ignore_index=True)
    

    以及df的调用绘图方法。

    欲了解更多信息:https://pandas.pydata.org/pandas-docs/stable/merging.html

    【讨论】:

    • 感谢您的完美回答。但是,还有一个问题。我想比较一下northsouth的速度和索引是dateIndex。如果行相同但索引的值不是那么我能做什么?
    • 我想不出这个问题的简短答案。可以按速度值分组,然后比较组中的数据吗?
    猜你喜欢
    • 2018-03-08
    • 2021-11-22
    • 2022-01-22
    • 2018-02-24
    • 1970-01-01
    • 2019-01-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多