带有零值的Pandas堆叠面积图

10
我正在使用pandas df.plot(kind = area)创建堆叠面积图。有些数据在某些时候的值为零。我希望在值为零的地方不显示线条。在仍显示区域的情况下,是否可以隐藏线条?
以下是制作简单图表的基本代码。 我不希望红线在3和4之间显示,因为这些值为0。
import numpy as np
import pandas as pd
data = np.array([np.arange(10)]*3).T
df = pd.DataFrame(data, columns = ['A','B','C'])
df['C']=np.where(df.index==4,0,df['C'])
df['C']=np.where(df.index==3,0,df['C'])
df.plot(kind='area')

删除您不想要的值所在的行。 - Paul H
该行中并非所有的值都为零。 - Lynette Brooks
没有代码生成具有代表性的数据框,很难解决这种问题。 - Paul H
代码正在读取其他文件,将其放在这里会很困难。有没有一种方法可以在不包含整个代码的情况下将数据框添加到代码中? - Lynette Brooks
我添加了示例代码,但我不知道如何在这里显示图形。 - Lynette Brooks
@LynetteBrooks 将图形保存为文件,然后使用编辑选项将其上传到问题中。 - mjp
1个回答

9

我终于找到了解决方案。其他地方建议使用 edgecolor 等方法,但这并没有解决问题。然而,使用 linewidth 可以。

linewidth=0

或者,你可以使用以下代码行:

df.plot(kind='area', linewidth=0)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接