Проблема
У меня есть график с двумя осями Y, каждая из которых соответствует набору линий. Сплошные линии соответствуют левой оси y, а пунктирные линии соответствуют правой оси y. У меня также есть легенда, и я хочу, чтобы в качестве ключей использовались только сплошные линии, поскольку пунктирные линии имеют одинаковые метки в зависимости от их цвета.
Проблема в том, что когда я рисую легенду для сплошных линий, а затем код для пунктирных линий, линии сетки отображаются сквозь легенду. Мне нужно указать линии сетки для обеих осей, поскольку в противном случае они не будут отображаться, и если я переместу легенду к пунктирным линиям, вместо этого они будут использовать пунктирные линии в качестве ключей. Я тоже не хочу менять свой порядок черчения.
Код и сюжет
#Plot
x= np.arange(0,3)
fig,ax = plt.subplots(figsize=(6,6))
#DOD
dod1 = ax.plot(x, ctrl_dod, color='r', label='CTRL' )
dod2 = ax.plot(x, mfkc_dod, color='#e68a00', label='MFKC' )
dod3 = ax.plot(x, gses_dod, color='green', label='GSES' )
dod4 = ax.plot(x, gses3_dod, color='blue', label='GSES-3')
dod5 = ax.plot(x, gses4_dod, color='purple', label='GSES-4')
dod6 = ax.plot(x, mera_dod, color='brown', label='MERRA2')
ax.xaxis.grid(True)
ax.set_ylim([0.02,0.044])
ax.set_yticks(np.arange(0.02,0.045,0.004))
ax.set_xlabel('Month')
ax.set_ylabel('Dust Optical Depth (550 nm)')
ax.set_title('Global Mean DOD and DCM')
legend = ax.legend()
legend.get_frame().set_facecolor('white')
#DCM
ax2 = ax.twinx()
dcm1 = ax2.plot(x, ctrl_dcm*1e6, color='r', linestyle='--', label='CTRL' )
dcm2 = ax2.plot(x, mfkc_dcm*1e6, color='#e68a00', linestyle='--', label='MFKC' )
dcm3 = ax2.plot(x, gses_dcm*1e6, color='green', linestyle='--', label='GSES' )
dcm4 = ax2.plot(x, gses3_dcm*1e6, color='blue', linestyle='--', label='GSES-3')
dcm5 = ax2.plot(x, gses4_dcm*1e6, color='purple', linestyle='--', label='GSES-4')
dcm6 = ax2.plot(x, mera_dcm*1e6, color='brown', linestyle='--', label='MERRA2')
ax2.xaxis.grid(True)
ax2.yaxis.grid(True)
ax2.set_xlabel('Month')
ax2.set_ylabel('Dust Column Mass (mg m-2)')
#Limits
axes = plt.gca()
axes.set_xlim([-0.25,2.25])
#Labels
axes.set_xticks(x)
axes.set_xticklabels(['June','July','August'])
#Save
pylab.savefig('dod+dcm.png')
Вопрос
Как я могу
а) используйте в клавишах легенды сплошные линии и
б) имеет ли фон для легенды непрозрачный белый цвет?