如何在Python中绘制带有置信区间的时间序列数组?(Matplotlib)

如何在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()

输出

如何在Python中绘制带有置信区间的时间序列数组?(Matplotlib)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程