python画图横坐标为时间,怎么设置时间间隔
时间: 2024-01-23 11:04:21 浏览: 110
你可以使用matplotlib库中的dates模块来处理日期数据,并使用日期格式化程序来设置横坐标的时间间隔。例如,下面的代码示例设置每个月的第一天作为x轴的刻度:
```python
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import datetime as dt
# 生成示例数据
dates = [dt.date(2021, 1, 1), dt.date(2021, 2, 1), dt.date(2021, 3, 1),
dt.date(2021, 4, 1), dt.date(2021, 5, 1), dt.date(2021, 6, 1),
dt.date(2021, 7, 1), dt.date(2021, 8, 1), dt.date(2021, 9, 1),
dt.date(2021, 10, 1), dt.date(2021, 11, 1), dt.date(2021, 12, 1)]
values = [10, 15, 20, 18, 12, 8, 14, 22, 25, 19, 16, 11]
# 创建图像及子图
fig, ax = plt.subplots()
# 将日期数据作为x轴
ax.plot(dates, values)
# 设置x轴的日期格式化程序
ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d'))
# 设置x轴的刻度为每个月的第一天
ax.xaxis.set_major_locator(mdates.MonthLocator(bymonthday=1))
plt.show()
```
上述代码将横坐标的时间间隔设置为每个月的第一天,你可以根据自己的需求更改日期格式和间隔。
阅读全文