python如何画时序散点图,以真实时间为横轴
时间: 2024-05-10 10:19:59 浏览: 107
要画时序散点图,可以使用Python中的matplotlib库。具体步骤如下:
1. 导入matplotlib库。
```
import matplotlib.pyplot as plt
```
2. 准备数据。数据中必须包含时间戳和对应的数值。
```
x = ['2021-01-01 00:00:00', '2021-01-02 00:00:00', '2021-01-03 00:00:00']
y = [2, 5, 3]
```
3. 将时间戳转换成datetime对象。
```
import datetime
x = [datetime.datetime.strptime(d, '%Y-%m-%d %H:%M:%S') for d in x]
```
4. 绘制散点图。
```
plt.plot(x, y, 'o')
```
5. 设置横轴为真实时间。
```
plt.gca().xaxis.set_major_formatter(plt.DateFormatter('%Y-%m-%d %H:%M:%S'))
plt.gcf().autofmt_xdate()
```
6. 添加标题和标签。
```
plt.title('Time series scatter plot')
plt.xlabel('Time')
plt.ylabel('Value')
```
7. 显示图形。
```
plt.show()
```
完整代码如下:
```
import matplotlib.pyplot as plt
import datetime
x = ['2021-01-01 00:00:00', '2021-01-02 00:00:00', '2021-01-03 00:00:00']
y = [2, 5, 3]
x = [datetime.datetime.strptime(d, '%Y-%m-%d %H:%M:%S') for d in x]
plt.plot(x, y, 'o')
plt.gca().xaxis.set_major_formatter(plt.DateFormatter('%Y-%m-%d %H:%M:%S'))
plt.gcf().autofmt_xdate()
plt.title('Time series scatter plot')
plt.xlabel('Time')
plt.ylabel('Value')
plt.show()
```
阅读全文