如何绘制时间序列数组,并在 Python 中显示置信区间?(Matplotlib)
要绘制时间序列数组,并在 Python 中显示置信区间,我们可以采取以下步骤 −
- 设置图形大小,并调整子图之间和周围的边距。
- 获取时间序列数组。
- 初始化一个变量 n_steps,以获取平均值和标准差。
- 获取置信区间的下线和上线。
- 使用 plot() 方法绘制平均值线。
- 使用 fill_between() 方法获取置信区间。
- 要显示图形,请使用 show() 方法。
示例
import numpy as np import pandas as pd import matplotlib.pyplot as plt plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True time_series_array = np.sin(np.linspace (-np.pi, np.pi, 400)) + np.random.rand((400)) n_steps = 15 time_series_df = pd.DataFrame(time_series_array) line = time_series_df.rolling(n_steps).mean() line_deviation = 2 * time_series_df.rolling(n_steps).std() under_line = (line - line_deviation)[0] over_line = (line + line_deviation)[0] plt.plot(line, linewidth=2) plt.fill_between(line_deviation.index, under_line, over_line, color='red', alpha=.3) plt.show()
输出

广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP