pandas - 熊猫图只有两个日期作为索引
问题描述
我有这个以日期为索引的简单熊猫数据框:
df=pd.DataFrame({'a':[20,30,12],'b':[15,18,18]},index=['2021-10-7','2021-10-8','2021-10-9']) df.index=pd.to_datetime(df.index)
当我尝试在 xaxis 中绘制一个只有两个日期的简单pandas.plot
df.iloc[-2:].plot()
它给了我下面的图,轴上有很多数字
如果我绘制整个数据库,绘图工作正常:db.plot()
谢谢你的支持
解决方案
您可以在设置索引后添加以下行以使其工作。
df.index.freq = 'D'
所以你的整个代码看起来像这样:
df=pd.DataFrame({'a':[20,30,12],'b':[15,18,18]},index=['2021-10-7','2021-10-8','2021-10-9'])
df.index = pd.to_datetime(df.index)
df.index.freq = 'D'
或者:
您还可以使用 date_range 如下所示:请注意,只有当您的数据类似于提供的具有每日频率的数据时,这才有效,您需要在频率不同的情况下进行调整。
df=pd.DataFrame({'a':[20,30,12],'b':[15,18,18]},index=['2021-10-7','2021-10-8','2021-10-9'])
df.index=pd.date_range(start = '2021-10-07', end='2021-10-09')
这两种方法都会为您提供与问题中提到的相同的情节(类似于提供的问题中的底部一个)
推荐阅读
- sql - 在具有大量活动用户的项目中使用 ASP 身份用户
- reactjs - 卸载时 React Progressive Web App 添加到主屏幕不起作用
- postgresql - PostgreSQL - 为具有多对多关系的多个表创建数据库视图
- angular - 如何使用 Ionic 4 检测平台
- json - 如何从 JSON 对象中检索多个值
- c# - C# 将 ListViewGroup 标题文本更改为粗体
- php - Laravel 迁移不适用于新数据库
- git - 当我第一次从命令行推送现有存储库时
- java - 如何在不迭代 Thymeleaf 的情况下访问 Map 中的对象键
- sql - 如何使用左外连接而不是 in 编写此查询