Я пытаюсь отобразить данные в двух фреймах данных на двух субплотах. Я имею в виду эту ссылку
import pandas as pd
import numpy as np
from pprint import pprint
from matplotlib import pyplot as plt
df1 = pd.DataFrame(np.random.randn(10, 10))
df2 = pd.DataFrame(np.random.randn(10, 10))
plt.figure()
fig, axes = plt.subplots(nrows=1, ncols=2)
df1.plot(ax=axes[0, 0], style='o-')
axes[0, 0].set_xlabel('x')
axes[0, 0].set_ylabel('y')
axes[0, 0].set_title('ttl')
df2.plot(ax=axes[0, 1], style='o-')
axes[0, 1].set_xlabel('x')
axes[0, 1].set_ylabel('y')
axes[0, 1].set_title('ttl')
Однако я получаю следующую ошибку
df1.plot(ax=axes[0, 0], style='o-')
IndexError: too many indices for array
Любые предложения о том, как решить эту проблему, будут действительно полезны. РЕДАКТИРОВАТЬ: приведенный ниже ответ работает для 1 строки с 2 столбцами
Я сталкиваюсь с ошибкой для 2 строк и 2 столбцов
import pandas as pd
import numpy as np
from pprint import pprint
from matplotlib import pyplot as plt
df1 = pd.DataFrame(np.random.randn(10, 10))
df2 = pd.DataFrame(np.random.randn(10, 10))
df3 = pd.DataFrame(np.random.randn(10, 10))
df4 = pd.DataFrame(np.random.randn(10, 10))
pprint(df1)
plt.figure()
fig, axes = plt.subplots(nrows=2, ncols=2)
df1.plot(ax=axes[0], style='o-')
axes[0].set_xlabel('x')
axes[0].set_ylabel('y')
axes[0].set_title('ttl')
df2.plot(ax=axes[1], style='o-')
axes[1].set_xlabel('x')
axes[1].set_ylabel('y')
axes[1].set_title('ttl')
df3.plot(ax=axes[2], style='o-')
axes[2].set_xlabel('x')
axes[2].set_ylabel('y')
axes[2].set_title('ttl')
df4.plot(ax=axes[3], style='o-')
axes[3].set_xlabel('x')
axes[3].set_ylabel('y')
axes[3].set_title('ttl')
plt.show()
Ошибка:
AttributeError: 'numpy.ndarray' object has no attribute 'get_figure'
Есть предложения?