python - 使用 matplotlib 限制 x 刻度的频率
解决方案
如评论中所述,使用 datetime (如果您的日期是字符串格式,您可以轻松地将它们转换为 datetime)。一旦你这样做了,它应该会自动沿 x 轴显示年份。如果您需要将滴答频率更改为每年(或其他任何时间),您可以使用 mdates,如下所示:
import matplotlib.dates as mdates
import matplotlib.pyplot as plt
import datetime
import math
start = datetime.datetime.strptime("01-01-2000", "%d-%m-%Y")
end = datetime.datetime.strptime("10-04-2019", "%d-%m-%Y")
x = [start + datetime.timedelta(days=x) for x in range(0, (end-start).days)]
y = [math.sqrt(x) for x in range(len(x))]
fig, ax = plt.subplots()
ax.plot(x, y)
ax.xaxis.set_major_locator(mdates.YearLocator())
fig.autofmt_xdate()
plt.show()
推荐阅读
- javascript - 检查是否已在 Stripe 中按月收费
- amazon-web-services - 如何使用 java 从路由 53 获取特定托管区域的所有资源记录集
- shopify - 如何在 .liquid 文件中显示两个变量?
- javascript - Mongoose 异步批量保存/更新每个只更新一些文档
- linux - 多 Docker 容器性能
- c - 内存可读的机制是什么?
- parsing - 如何解析未知长度的二进制 PDF 流?
- hadoop - 在 GCP 上连接 b/w R studio server pro 和 hive
- spring - 在基于springboot的微服务中使用“new”关键字初始化对象时出现空指针异常
- kubernetes - Worker 节点返回集群后重新分配负载