import pylab
import matplotlib.pyplot as plt
import matplotlib.ticker as ticker
pyplotParams = {
'backend': 'eps',
'axes.labelsize': 8,
'axes.facecolor': '#E5E5E5', # axes background color
'axes.edgecolor': 'k', # axes edge color
'axes.grid': True, # display grid or not
'axes.axisbelow': True, # show grid below plot elements
'grid.color': 'w', # grid color
'grid.linestyle': '-', # grid line style
'figure.dpi': 80,
'figure.facecolor': 'w',
}
rcParams.update(pyplotParams)
fig1 = plt.figure()
ax4 = fig1.add_subplot(111)
ax4.plot(xaxis3_val,cum_ar_250_ret,color='g')
ax4.plot(xaxis3_val,cum_basket_250_ret,color='b')
ax5 = ax4.twinx()
ax5.plot(xaxis3_val,signal,color='r')
plt.show()
上記の例は、4つのプロットのセットの縮小版であり、4つのプロットすべてにグリッド線が必要です。ただし、図4では、ax5ではなくax4に対してのみグリッド性が必要です。Axesオブジェクト(ax5)には、グリッドの印刷をオフに設定する簡単な方法がないようです。ax5のグリッド線を選択的にオフにするにはどうすればよいですか?次のことを試しましたが、機能しません。
(Pdb) ax5.get_xgridlines()
<a list of 6 Line2D xgridline objects>
(Pdb) ax5.grid(ls=None)
*** AttributeError: 'NoneType' object has no attribute 'startswith'
(Pdb)