gpt4 book ai didi

python - 如何从 Pandas 图中提取数据?

转载 作者:太空宇宙 更新时间:2023-11-04 02:50:08 25 4
gpt4 key购买 nike

我有一个数据框,我正在用 ipython 中的 pandas 绘制它。我正在导入通常的东西,然后绘制数据框

import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline

traydata_A[('x_TmId', 'Trays')].plot()
plt.xlabel('Hour of the day')
plt.ylabel('Number of picked/despatched trays')

并希望通过使用(例如 this question )获取绘制的实际数据

ax = plt.gca() 
line = ax.lines[0]

最终结果是

  IndexError                                Traceback (most recent call last)
<ipython-input-220-d211b85302a5> in <module>()
1 ax = plt.gca()
----> 2 line = ax.lines[0]

IndexError: list index out of range

我做错了什么?我确定我对pandas如何连接matplotlib有很深的误解!

最佳答案

您必须确保使用 pandas 图返回的坐标轴 function .在您的代码中,ax = plt.gca() 返回一个与 pandas 使用的轴不同的轴。要么确保在同一上下文中执行代码,要么将 pandas 轴保存到中间变量中。完整示例:

s = pd.Series(data=[5850000, 6000000, 5700000, 13100000, 16331452], name='data')
ax = s.plot()
print(ax.get_lines()[0].get_xydata())
[[ 0.00000000e+00 5.85000000e+06]
[ 1.00000000e+00 6.00000000e+06]
[ 2.00000000e+00 5.70000000e+06]
[ 3.00000000e+00 1.31000000e+07]
[ 4.00000000e+00 1.63314520e+07]]

来自 matplotlib.pyplot.gca 的文档:

Get the current Axes instance on the current figure matching the given keyword args, or create one.

[...]

If the current axes doesn’t exist [..] the appropriate axes will be created and then returned.

关于python - 如何从 Pandas 图中提取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44129380/

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