shading the timeseries plot in python(在Python中对TimeSeries绘图进行着色)
本文介绍了在Python中对TimeSeries绘图进行着色的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个数据帧,数据示例如下所示。
我正在尝试对时间序列图周围的区域进行阴影处理。我尝试使用fill_between函数,但不起作用。
我已尝试:
# load the file
df = pd.read_csv(r"C:Userssamdata.csv", usecols=['Hour','Forecast'],header=0)
X1=df.forecast
mu = X1.mean
sigma = X1.std
timestep=df.Hour
# ss=mu1+sigma1
# kk=mu1-sigma1
plt.fill_between(timestep, mu, sigma, alpha=0.2) #this is the shaded error
sample_data.csv
Hour Forecast
1 0.428732899
2 0.501308875
3 0.491805242
4 0.392900424
5 0.442624008
6 0.411723392
7 0.397455466
8 0.400126642
9 0.444411425
10 0.423408925
11 0.759687642
12 2.166908125
13 2.153370175
14 2.053740002
15 2.095005501
16 2.153214908
17 2.210168766
18 2.122148284
19 1.9024695
20 2.255718026
21 2.258879807
22 0.480089583
23 1.551103332
24 1.512505375
预期产量:
推荐答案
线条周围的阴影区域表示95%置信区间。为了获得此区域,每个时间点都应该有多个观测值,因此可以计算每个时间点的标准偏差和CI。但是在您提供的数据中,每个时间点只有一个观察值。
您可以通过计算标准偏差和总和,然后从要绘制的列中减去标准偏差,来绘制类似的绘图。注意!这不是置信区间(需要更多观察),而是每个时间点平均值附近的2倍标准差的区间。此外,它在时间轴上保持恒定宽度。
老实说,我怀疑这是一个有用的绘图,因为面积宽度在时间上是恒定的,而面积宽度是标准差的2倍,标准差是沿时间计算的。简而言之:您不应该使用此图并为每个时间点提供更多观测数据来计算适当的置信区间。
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_csv(r"data/data.csv", usecols = ['Hour', 'Forecast'], header = 0)
X1 = df.Forecast
mu = X1.mean()
sigma = X1.std()
timestep = df.Hour
X1_plus_sigma = X1 + sigma
X1_minus_sigma = X1 - sigma
plt.plot(timestep, X1, color = 'blue')
plt.fill_between(timestep, X1_plus_sigma, X1_minus_sigma, alpha = 0.2, color = 'blue')
plt.show()
这篇关于在Python中对TimeSeries绘图进行着色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:在Python中对TimeSeries绘图进行着色
基础教程推荐
猜你喜欢
- 求两个直方图的卷积 2022-01-01
- 包装空间模型 2022-01-01
- Plotly:如何设置绘图图形的样式,使其不显示缺失日期的间隙? 2022-01-01
- PANDA VALUE_COUNTS包含GROUP BY之前的所有值 2022-01-01
- PermissionError: pip 从 8.1.1 升级到 8.1.2 2022-01-01
- 无法导入 Pytorch [WinError 126] 找不到指定的模块 2022-01-01
- 使用大型矩阵时禁止 Pycharm 输出中的自动换行符 2022-01-01
- 在Python中从Azure BLOB存储中读取文件 2022-01-01
- 修改列表中的数据帧不起作用 2022-01-01
- 在同一图形上绘制Bokeh的烛台和音量条 2022-01-01
