【问题标题】:Is there any way to create multiple axes plot only by using python-pandas? [duplicate]有没有办法只使用 python-pandas 创建多轴图? [复制]
【发布时间】:2022-01-24 06:16:27
【问题描述】:

我是 pandas 库的新手,正在处理一个样本(大小:100K 行,3 列)数据集。我想知道是否可以使用df.plot() 方法在带有熊猫的线图下方绘制?。

基本上我需要在一个共同的 X 轴上绘制两个 Y 轴(两个不同的比例),当然还有适当的标签和图例。

【问题讨论】:

    标签: python-3.x pandas matplotlib pyspark


    【解决方案1】:

    你可以使用twinx:

    fig, ax1 = plt.subplots()
    ax2 = ax1.twinx()
    

    现在你在同一个图中有 2 个轴。

    Demo from matplotlib

    适应熊猫:

    t = np.arange(0.01, 10.0, 0.01)
    data1 = np.exp(t)
    data2 = np.sin(2 * np.pi * t)
    df = pd.DataFrame({'X': t, 'Y1': data1, 'Y2': data2})
    
    ax1 = df.plot(x='X', y='Y1', color='b', legend=False)
    ax2 = df.plot(x='X', y='Y2', color='r', legend=False, ax=ax1.twinx())
    plt.show()
    

    【讨论】:

    • 我尝试了这种方法并遵循了实现类似方法的文章,但这需要花费大量时间来计算即使是正常的 XY 绘图也需要大约 2 分钟才能绘制,但 pandas df.plot() 方法可以在几秒钟内工作.那么你能建议实现 df.plot() 而不是直接使用 matplotlib.plot 的解决方案吗?
    • 你想念我在df.plot的例子吗?
    • 对不起,我错过了。谢谢它的工作!你能给我推荐一篇文章来美化这个图表吗,比如添加图例、备注、标记数据点等?
    • 你可以看看Matplotlib gallery。我经常使用Seaborn,因为该库可以理解 Pandas 数据框。
    猜你喜欢
    • 2020-04-13
    • 2014-10-29
    • 2021-03-26
    • 1970-01-01
    • 2015-09-10
    • 1970-01-01
    • 2021-11-28
    • 1970-01-01
    • 2017-12-09
    相关资源
    最近更新 更多