Попытка построить 3 вспомогательных участка с общей осью X - PullRequest
0 голосов
/ 20 февраля 2019

Я пытаюсь построить 3 subplots с общей осью X, но по какой-то причине только один из моих subplots строит графики, и я не могу понять, почему:

df1 = pd.DataFrame({'col1':[1,2,3,None,5], 'col2':[25,5,None,None,1], 
'col3':[40,3,None,None,None]}, index=[datetime.date(2015,7,7),datetime.date(2015,7,12),datetime.date(2015,8,1),datetime.date(2015,8,10),datetime.date(2015,9,20)])

df2 = pd.DataFrame({'col1':[14,82,None,None,1], 'col2':[5,5,None,4,1], 'col3':[4,3,5,None,6]}, 
               index=[datetime.date(2015,7,10),datetime.date(2015,7,15),datetime.date(2015,8,4),datetime.date(2015,8,12),datetime.date(2015,9,25)])

df3 = pd.DataFrame({'col1':[10,9,None,None,15], 'col2':[None,5,None,3,1], 'col3':[None,3,3,1,74]}, 
               index=[datetime.date(2015,7,5),datetime.date(2015,8,1),datetime.date(2015,8,9),datetime.date(2015,8,10),datetime.date(2015,9,20)])


fig=plt.figure(figsize=(15, 15))
ax1 = plt.subplot(313)
ax2 = plt.subplot(312, sharex = ax1)
ax3 = plt.subplot(311, sharex = ax1)

for column in df1.columns:
    ax1 = plt.scatter(df1.index, df1[column], s=2)


for column in df2.columns:
    ax2 = plt.scatter(df2.index, df2[column], s=2)


for column in df3.columns:
    ax3 = plt.scatter(df3.index, df3[column], s=2)

plt.show()

1 Ответ

0 голосов
/ 20 февраля 2019

Вы определяете участки без их использования.Используйте это:

for column in df1.columns:
    ax1.scatter(df1.index, df1[column], s=2)


for column in df2.columns:
    ax2.scatter(df2.index, df2[column], s=2)


for column in df3.columns:
    ax3.scatter(df3.index, df3[column], s=2)
...