【问题标题】:python stacked area chart shows with weird borders between areaspython堆积面积图显示区域之间有奇怪的边界
【发布时间】:2020-07-31 13:02:12
【问题描述】:

我使用 pandas 图表创建了一个堆积面积图: df.plot(kind='area',stacked=True, figsize=(15, 8))

结果图表在区域之间有奇怪的边界,如下所示,我不明白它们为什么存在以及如何删除它们。

【问题讨论】:

    标签: python pandas charts stacked-area-chart


    【解决方案1】:

    当您的数据在 X 轴上的值有重复条目时,可能会发生奇怪的事情。

    import pandas as pd
    import matplotlib.pyplot as plt
    
    df = pd.DataFrame({
        'x': [1, 2, 3, 4, 1, 2, 3, 4],
        'v1': [10, 11, 12, 13, 1, 1, 1, 1],
        'v2': [10]*8,
        'v3': [1, 1, 1, 1, 20, 30, 40, 50],
    })
    df = df.set_index('x')
    
    df.plot(kind='area', stacked=True)
    plt.show()
    

    为确保不会发生这种情况,首先按索引和总和分组。

    summed = df.groupby(level=0).sum()
    summed.plot(kind='area', stacked=True)
    

    【讨论】:

    • 感谢您的回答。实际上问题出在dpi而不是数据中。我使用了 72 dpi(默认选项),这个分辨率给出了这些伪像。它们甚至在您的图表中以及绿色和橙色区域之间可见。
    猜你喜欢
    • 2019-04-09
    • 2014-08-12
    • 2021-12-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多