gpt4 book ai didi

python - 无法将 pandas Series 传递给 pyplot 的 fill_ Between 函数?

转载 作者:行者123 更新时间:2023-12-01 05:39:48 25 4
gpt4 key购买 nike

将 pandas Series 传递给 pyplot 的 fill_ Between() 函数会产生以下错误:

<type 'exceptions.KeyError'> -1

但是,其他 pyplot 函数似乎可以将 Series 作为输入(plot() 和 scatter() 似乎可以很好地使用它)。我知道这个问题可以通过传递 my_series.value 而不是 my_series 来解决,但是有人可以解释为什么某些 pyplot 绘图函数似乎可以接受 Series 作为输入,而其他函数则不然?当给定一个系列时哪些函数会崩溃?谢谢。

最佳答案

因为 matplotlib 被编写为将序列或类似 np.ndarray 的对象作为参数(并且对 pandas 一无所知)。如果内部使用的所有方法在 pandas 对象和 numpy 对象上都工作相同,那么它就可以工作(鸭子类型的魔力)。如果 pandas 对象行为不正确(在本例中使用 v[-1] 获取第一个维度的最后一个元素),它将引发错误。

如果给定的函数与 pandas 对象一起工作,取决于该函数的内部结构,并且即使在 mpl 的次要版本之间也不能保证稳定,因为您本质上是以未记录的方式使用 matplotlib 。

关于python - 无法将 pandas Series 传递给 pyplot 的 fill_ Between 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17910173/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com