matplotlib怎么在折线上标时间
时间: 2023-11-19 17:05:58 浏览: 61
可以通过设置 x 轴的 ticklabels 来标记时间。具体操作如下:
1. 将时间转换为数值类型,可以使用 matplotlib 中的 dates 模块,如下所示:
```python
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
# time_list 为时间列表
time_list = [...]
# 将时间列表转换为 matplotlib 支持的时间格式
time = [mdates.date2num(d) for d in time_list]
```
2. 绘制折线图,并设置 x 轴 ticklabels,示例如下:
```python
# y_data 为折线图的纵坐标数据
y_data = [...]
# 绘制折线图
plt.plot(time, y_data)
# 设置 x 轴 ticklabels
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d %H:%M:%S'))
plt.xticks(rotation=45)
```
其中,`plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d %H:%M:%S'))` 设置 x 轴 ticklabels 的格式为 `%Y-%m-%d %H:%M:%S`,`plt.xticks(rotation=45)` 用于旋转 ticklabels,使其不会相互重叠。
阅读全文