fig, ax = plt.subplots(3,1,figsize=(10, 12))
bbox = {'boxstyle': 'round', 'facecolor': 'w', 'alpha': 0.9}
cmap = plt.get_cmap('tab10')
palette = [cmap(0), cmap(0.2), 'k', cmap(0.1), cmap(0.3)]
xticks=['2007','2008','2009','2010','2011','2012','2013','2014','2015','2016','2017','2018','2019','2020']
xticks1=['2007','2008','2009','2010','2011','2012','2013']
xticks2=['2014','2015','2016','2017','2018','2019','2020']
ax[0].bar(xticks1, NPGO[0:7],label='NPGO postive',color='blue')
ax[0].bar(xticks2, NPGO[7:14],label='NPGO negative',color='red')
#ax1.plot(xticks, AnnualNitrateAnom,marker='^',label='',color='orange')
#ax.bar(x,y,color='k')
ax[0].set_title('North Pacific Gyre Oscillation',fontsize=18) #(with 2015)
ax[0].legend(frameon=False,loc=3,fontsize=12)
ax[0].set_ylim(-2.5,2.5)
ax[0].set_ylabel('NPGO Index',fontsize=12)
ax[0].axhline(y=0,color='lightgrey',linestyle='-')
ax[0].xaxis.set_tick_params(labelsize=12)
ax[0].yaxis.set_tick_params(labelsize=12)
ax[0].set_xticklabels([])
ax[0].text(-1, 2, '(a)', fontsize=15, color='k')
ax2 = ax[1].twinx()
ax[1].plot(xticks, AnnualWindAnom,marker='o',label='Annual Wind Anomalies',color='k')
ax2.plot(xticks, AnnualNitrateAnom,marker='^',linestyle=':',label='Annual Nitrate Anomalies',color='darkviolet')
ax[1].plot(xticks, AnnualSSTAnom,marker='s',linestyle='-.',label='Annual SST Anomalies',color='red')
#ax.bar(x,y,color='k')
ax[1].set_title('',fontsize=18) #(with 2015)
ax[1].legend(frameon=False,loc=3,fontsize=12)
ax2.legend(frameon=False,loc=1,fontsize=12)
ax[1].set_ylim(-1,1)
ax2.set_ylim(-1.5,1.5)
ax[1].set_ylabel('Wind Speed (m s$^{-1}$)\n SST (Degrees C)',fontsize=12)
ax2.set_ylabel('Nitrate (umol N m$^{-3}$)',fontsize=12)
ax[1].axhline(y=0,color='lightgrey',linestyle='-')
ax[1].xaxis.set_tick_params(labelsize=12)
ax[1].yaxis.set_tick_params(labelsize=12)
ax[1].yaxis.set_major_formatter(FormatStrFormatter('%.1f'))
ax2.yaxis.set_tick_params(labelsize=12)
ax[1].set_xticklabels([])
ax[1].text(-.6, .8, '(b)', fontsize=15, color='k')
ax3 = ax[2].twinx()
ax3.plot(xticks, ZoopSummerGrazRatioAnom,marker='s',linestyle='--',label='Zooplankton Grazing Anomalies',color='royalblue')
#ax1.plot(xticks, MicroZoopSummerGrazRatioAnom,marker='s',linestyle='-.',label='Zooplankton Biomass Anomalies',color='royalblue')
#ax1.plot(xticks, AnnualNitrateAnom,marker='^',label='',color='orange')
ax[2].plot(xticks, SummerDiatomAnom,marker='o',linestyle='-',label='Diatom Biomass Anomalies',color='forestgreen')
#ax.bar(x,y,color='k')
ax3.set_title('',fontsize=18) #(with 2015)
ax3.legend(frameon=False,loc=3,fontsize=12)
ax[2].legend(frameon=False,loc=1,fontsize=12)
ax3.set_ylim(-1.5,1.5)
ax[2].set_ylim(-10,10)
ax3.set_ylabel('Zooplankton Grazing \n (Diatom:Nanoflagellate) ',fontsize=12)
ax[2].set_ylabel('Diatom Biomass (mmol N m$^{-2}$)',fontsize=12)
ax3.axhline(y=0,color='lightgrey',linestyle='-')
ax3.xaxis.set_tick_params(labelsize=12)
ax3.yaxis.set_tick_params(labelsize=12)
ax[2].yaxis.set_tick_params(labelsize=12)
#ax[2].set_xticklabels([])
ax3.text(-.6, 1.2, '(c)', fontsize=15, color='k')
#plt.savefig('Figure11_Summary.png', bbox_inches='tight',dpi=1000,transparent=False)