我想绘制X_train1_raw
X_train1_raw.shape
(2039, 17)
根据:
n_splits = 5
tscv = TimeSeriesSplit(n_splits = n_splits)
plt.figure(1)
index = 1
fig, ax = plt.subplots(2, 1, figsize=(24,7))
plt.style.use('seaborn-white')
fig.suptitle('', fontsize=20)
fig.tight_layout()
for train_index, val_index in tscv.split(X_train1_raw):
X_train1, X_val1 = prepare_data.fit_transform(X_train1_raw[train_index]), prepare_data.fit_transform(X_train1_raw[val_index])
y_train1, y_val1 = prepare_data.fit_transform(y_train1_raw[train_index]), prepare_data.fit_transform(y_train1_raw[val_index])
plt.subplot(510 + index)
plt.plot(X_train1[:, 1])
plt.plot([None for i in X_train1[:, 1]] + [x for x in X_val1[:, 1]])
plt.plot(X_train1[:, 2])
plt.plot([None for i in X_train1[:, 2]] + [x for x in X_val1[:, 2]])
index +=1
plt.show();
这将导致
因此仅绘制了第二个变量。当我将绘图命令分配给某些轴时,将导致一个空图:
fig, ax = plt.subplots(2, 1, figsize=(24,7))
(...)
for train_index, val_index in tscv.split(X_train1_raw):
X_train1, X_val1 = prepare_data.fit_transform(X_train1_raw[train_index]), prepare_data.fit_transform(X_train1_raw[val_index])
y_train1, y_val1 = prepare_data.fit_transform(y_train1_raw[train_index]), prepare_data.fit_transform(y_train1_raw[val_index])
plt.subplot(510 + index)
ax[0].plot(X_train1[:, 1])
ax[0].plot([None for i in X_train1[:, 1]] + [x for x in X_val1[:, 1]])
ax[1].plot(X_train1[:, 2])
ax[1].plot([None for i in X_train1[:, 2]] + [x for x in X_val1[:, 2]])
index +=1
plt.show();
这将导致
如何调整此值以并行绘制所有变量?
答案 0 :(得分:0)
我无权访问您的数据+我不在电脑上进行测试。下面仍然是我的建议。我已经稍微更改了您的代码。请进行必要的调整。
使用plt.add_subplot()
n_splits = 5
tscv = TimeSeriesSplit(n_splits = n_splits)
fig = plt.figure(figsize=(24,7))
index = 0
plt.style.use('seaborn-white')
for train_index, val_index in tscv.split(X_train1_raw):
X_train1, X_val1 = prepare_data.fit_transform(X_train1_raw[train_index]), prepare_data.fit_transform(X_train1_raw[val_index])
y_train1, y_val1 = prepare_data.fit_transform(y_train1_raw[train_index]), prepare_data.fit_transform(y_train1_raw[val_index])
ax1 = fig.add_subplot(5,2,index*2+1)
ax1.plot(X_train1[:, 1])
ax1.plot([None for i in X_train1[:, 1]] + [x for x in X_val1[:, 1]])
ax2 = fig.add_subplot(5,2,index*2+2)
ax2.plot(X_train1[:, 2])
ax2.plot([None for i in X_train1[:, 2]] + [x for x in X_val1[:, 2]])
index +=1
plt.show()
请让我知道是否有错误。