在时间序列图上将不同的分类 类 显示为不同的颜色
Show different classification classes as different colors on a timeseries plot
我想在 python.
的背景中可视化具有不同 类 的时间序列线图
假设我有 5 分钟的时间序列和 3 类,如 table 1.
所示
Time start
Time End
Class
00:00:00
00:00:30
1
00:00:31
00:01:30
2
00:01:31
00:04:00
3
00:04:01
00:05:00
2
我还有 table 2.
中显示的每 10 秒的压力值
Time End
Pressure
00:00:10
0.2
00:00:20
0.3
00:00:30
0.53
.
.
.
.
00:04:50
0.7
00:05:00
0.92
我想在 类 上用不同颜色绘制折线图,如下图所示。线图遵循 table 2,线图的背景颜色遵循 table 1。
我愿意使用任何可以帮助我完成此可视化的 python 库。
您可以使用以下代码段:
# convert timestamp to seconds
df2['Time End'] = pd.to_timedelta(df2['Time End']).dt.total_seconds()
df1['Time start'] = pd.to_timedelta(df1['Time start']).dt.total_seconds()
df1['Time End'] = pd.to_timedelta(df1['Time End']).dt.total_seconds()
# plot line
ax = df2.plot(x='Time End', y='Pressure')
ax.set_ylabel('Pressure')
# plot spans
colors = {1: '#D9E8FB', 2: '#F7CECC', 3: '#FFF2CD'}
for _, (x1, x2, c) in df1.iterrows():
ax.axvspan(x1, x2, color=colors[c])
我想在 python.
的背景中可视化具有不同 类 的时间序列线图假设我有 5 分钟的时间序列和 3 类,如 table 1.
所示Time start | Time End | Class |
---|---|---|
00:00:00 | 00:00:30 | 1 |
00:00:31 | 00:01:30 | 2 |
00:01:31 | 00:04:00 | 3 |
00:04:01 | 00:05:00 | 2 |
我还有 table 2.
中显示的每 10 秒的压力值Time End | Pressure |
---|---|
00:00:10 | 0.2 |
00:00:20 | 0.3 |
00:00:30 | 0.53 |
. | . |
. | . |
00:04:50 | 0.7 |
00:05:00 | 0.92 |
我想在 类 上用不同颜色绘制折线图,如下图所示。线图遵循 table 2,线图的背景颜色遵循 table 1。
我愿意使用任何可以帮助我完成此可视化的 python 库。
您可以使用以下代码段:
# convert timestamp to seconds
df2['Time End'] = pd.to_timedelta(df2['Time End']).dt.total_seconds()
df1['Time start'] = pd.to_timedelta(df1['Time start']).dt.total_seconds()
df1['Time End'] = pd.to_timedelta(df1['Time End']).dt.total_seconds()
# plot line
ax = df2.plot(x='Time End', y='Pressure')
ax.set_ylabel('Pressure')
# plot spans
colors = {1: '#D9E8FB', 2: '#F7CECC', 3: '#FFF2CD'}
for _, (x1, x2, c) in df1.iterrows():
ax.axvspan(x1, x2, color=colors[c])