【问题标题】:Python error on data.plot(x=data.timestamp, style=".-")data.plot(x=data.timestamp, style=".-") 上的 Python 错误
【发布时间】:2023-03-10 04:03:01
【问题描述】:

在 Python 中,我尝试使用以下命令来获取我的情节的时间戳信息。我已经导入了正确的包 pandas 和 pylab。数据也全部清理完毕。

data.plot(x=data.timestamp, style=".-")

我不断收到很多不同的错误。我正在关注https://www.youtube.com/watch?v=5XGycFIe8qE,它在 38 分钟后出现。这是我得到的错误:它是巨大的

Traceback(最近一次调用最后):文件“”,第 1 行,在 data.plot(x=data.timestamp, style=".-") 文件“C:\Python3\lib\site-packages\pandas \plotting_core.py",第 2673 行,在 call sort_columns=sort_columns, **kwds) 文件“C:\Python3\lib\site-packages\pandas\plotting_core.py”,第 1900 行,在plot_frame **kwds) 文件“C:\Python3\lib\site-packages\pandas\plotting_core.py”,第 1727 行,在 _plot plot_obj.generate() 文件“C:\Python3\lib\site-packages\pandas\ plotting_core.py”,第 260 行,在生成 self._post_plot_logic_common(ax, self.data) 文件“C:\Python3\lib\site-packages\pandas\plotting_core.py”,第 395 行,在 _post_plot_logic_common self._apply_axis_properties(ax .yaxis, fontsize=self.fontsize) 文件“C:\Python3\lib\site-packages\pandas\plotting_core.py”,第 468 行,在 _apply_axis_properties 标签 = axis.get_majorticklabels() + axis.get_minorticklabels() 文件“C :\Python3\lib\site-packages\matplotlib\axis.py",第 1188 行,在 get_majorti cklabels ticks = self.get_major_ticks() 文件“C:\Python3\lib\site-packages\matplotlib\axis.py”,第 1339 行,get_major_ticks numticks = len(self.get_major_locator()()) 文件“C:\ Python3\lib\site-packages\matplotlib\dates.py",第 1054 行,在 call self.refresh() 文件“C:\Python3\lib\site-packages\matplotlib\dates.py ",第 1074 行,在刷新 dmin,dmax = self.viewlim_to_dt() 文件 "C:\Python3\lib\site-packages\matplotlib\dates.py",第 832 行,在 viewlim_to_dt 返回 num2date(vmin, self.tz) , num2date(vmax, self.tz) 文件“C:\Python3\lib\site-packages\matplotlib\dates.py”,第 441 行,在 num2date 返回 _from_ordinalf(x, tz) 文件“C:\Python3\lib\ site-packages\matplotlib\dates.py",第 256 行,在 _from_ordinalf dt = datetime.datetime.fromordinal(ix).replace(tzinfo=UTC) ValueError: ordinal must be >= 1

【问题讨论】:

  • 可以分享数据吗?
  • 我猜这和this one是同一个问题。
  • 数据集在这里:github.com/QCaudron/pydata_pandas/tree/master/datacoffee.csv。我不得不删除空值并将时间戳和咖啡数量的数据类型分别更改为日期时间和整数。我可以使用 pylab 在绘图中查看它但我想将时间戳元素添加为我的 x 值。

标签: python pandas matplotlib plot


【解决方案1】:

我遇到了类似的问题,我认为这是 pandas 和 Jupyter Notebook 的版本问题,这与 Quentin 在他的示例中使用的不同:https://github.com/QCaudron/pydata_pandas 以及你和我正在使用的。

试试这个:

data.plot('timestamp', style='.-')

data.plot(x='timestamp', style='.-')

根据 pandas 文档 https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.plot.html,标签或位置应该可以工作。

数据帧
x : 标签或位置,默认无
y : 标签或位置,默认无
允许绘制一列与另一列

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-09
    • 1970-01-01
    • 1970-01-01
    • 2019-05-02
    • 1970-01-01
    • 2015-02-16
    相关资源
    最近更新 更多