Python 绘制for循环中的所有变量
我想绘制Python 绘制for循环中的所有变量,python,matplotlib,Python,Matplotlib,我想绘制X\u train1\u 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.ti
X\u train1\u 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();
导致
如何调整此设置以并行绘制所有变量?我无法访问您的数据+我不在计算机旁测试它。下面是我的建议。我稍微修改了你的代码。请做必要的调整 使用plt.add_subplot()
n_splits=5
tscv=时间序列分裂(n_分割=n_分割)
图=plt.图(图尺寸=(24,7))
索引=0
plt.style.use('seaborn-white'))
对于列索引,tscv.split中的值索引(X列1原始):
X_train1,X_val1=准备_数据。拟合变换(X_train1_原始[训练索引]),准备_数据。拟合变换(X_train1_原始[估值索引])
y_train1,y_val1=准备_数据。拟合变换(y_train1_原始[训练索引]),准备_数据。拟合变换(y_train1_原始[估值索引])
ax1=图add_子批次(5,2,索引*2+1)
ax1.绘图(X_列1[:,1])
ax1.绘图([X_列1[:,1]]中的i无)+[X_列1[:,1]]中的X的X为X)
ax2=图add_子批次(5,2,索引*2+2)
ax2.绘图(X_列1[:,2])
ax2.绘图([X_列1[:,2]]中的i无)+[X_列1[:,2]]中的X为X]
指数+=1
plt.show()
如果有任何错误,请告诉我。您键入了“plt.子批次(510+索引)”。您是否检查了索引是否超过5?由于时间序列分割,索引停止在5