def plotI0(AX,Q2,central,other,flav,color,ls,T=1,hatch=None,alpha=0.4,facecolor='none',edgecolor='none'): """ This routine plots a ratio band of 'other' to 'central' using the error from 'other' """ ax=AX[flav] if flav=='u' or flav=='d' or flav=='g': X=np.linspace(1e-4,0.95,100) else: X=np.linspace(1e-4,0.5,100) C=central.get_xpdf(flav,X=X,Q2=Q2) O=other.get_xpdf(flav,X=X,Q2=Q2) ax.plot(X,O['xf0']/C['xf0'],color=color,ls=ls) p1,=ax.plot(X,O['xf0']/C['xf0'],color=color,ls=ls,label=flav) p2=fill_between(X, (O['xf0']-O['dxf-']*T)/C['xf0'], (O['xf0']+O['dxf+']*T)/C['xf0'], ax=ax, facecolor=facecolor, edgecolor=edgecolor, alpha=alpha, hatch=hatch) return (p2,p1)
def main(): T = 10 Q2 = 100 X = np.linspace(1e-3, 0.4) CJ = COMPOSER(name="CJ15_NLO_KP_AV18") d = CJ.get_xpdf("db-ub", X=X, Q2=Q2) ax = py.subplot(111) p1, = ax.plot(X, d["xf0"] / X, color="r", ls="-") p2 = fill_between( X, (d["xf0"] - d["dxf-"] * T) / X, (d["xf0"] + d["dxf+"] * T) / X, ax=ax, facecolor="r", edgecolor="none", alpha=0.5, ) H = [(p2, p1)] L = [tex("CJ15") + "\ $(T=%d)$" % T] ax.legend(H, L, loc=1, frameon=0, fontsize=20) ax.set_ylim(-0.2, 1.2) ax.axhline(0, ls="--", color="k", alpha=0.5) py.savefig("gallery/db_ub.pdf")
def plot(flav,color,factor=1): XL=10**np.linspace(-4,-1,100) XR=np.linspace(0.1,1,100) L=CJ.get_xpdf(flav,X=XL,Q2=Q2) R=CJ.get_xpdf(flav,X=XR,Q2=Q2) axL.plot(XL,L['xf0']*factor,color=color,ls='-') p1,=axR.plot(XR,R['xf0']*factor,color=color,ls='-',label=flav) fill_between(XL, factor*(L['xf0']-L['dxf-']*10), factor*(L['xf0']+L['dxf+']*10), ax=axL, facecolor=color, edgecolor='none', alpha=0.5) p2=fill_between(XR, factor*(R['xf0']-R['dxf-']*10), factor*(R['xf0']+R['dxf+']*10), ax=axR, facecolor=color, edgecolor='none', alpha=0.5)#,hatch=None) return (p2,p1)
def plot_dataset(self, dataset, T=10): k = dataset D = self.D ax = self.AX[k] data = D[k]["DATA"] derr = D[k]["DERROR"] theory = D[k]["THEORY"] terr = D[k]["ERROR"] y = D[k]["Y"] p1, = ax.plot(y, theory, "r-") p2 = fill_between(y, theory - terr * T, theory + terr * T, ax=ax, facecolor="yellow", edgecolor="yellow") p3 = ax.errorbar(y, data, yerr=derr, fmt="k.") return (p2, p1), p3
def plotI(AX,Q2,central,other,flav,color,ls,T=1,hatch=None,alpha=0.4,facecolor='none',edgecolor='none'): """ This routine plots a ratio band of 'other' to 'central' using the error from 'other' """ axL,axR=AX[flav] XL=10**np.linspace(-4,-1,100) if flav=='u' or flav=='d' or flav=='g': XR=np.linspace(0.1,0.95,100) else: XR=np.linspace(0.1,0.5,100) LC=central.get_xpdf(flav,X=XL,Q2=Q2) RC=central.get_xpdf(flav,X=XR,Q2=Q2) LO=other.get_xpdf(flav,X=XL,Q2=Q2) RO=other.get_xpdf(flav,X=XR,Q2=Q2) axL.plot(XL,LO['xf0']/LC['xf0'],color=color,ls=ls) p1,=axR.plot(XR,RO['xf0']/RC['xf0'],color=color,ls=ls,label=flav) fill_between(XL, (LO['xf0']-LO['dxf-']*T)/LC['xf0'], (LO['xf0']+LO['dxf+']*T)/LC['xf0'], ax=axL, facecolor=facecolor, edgecolor=edgecolor, alpha=alpha, hatch=hatch) p2=fill_between(XR, (RO['xf0']-RO['dxf-']*T)/RC['xf0'], (RO['xf0']+RO['dxf+']*T)/RC['xf0'], ax=axR, facecolor=facecolor, edgecolor=edgecolor, alpha=alpha, hatch=hatch) axL.set_xlim(np.amin(XL),0.1) axR.set_xlim(0.1,np.amax(XR)) return (p2,p1)
def plot_dou(ax,com,Q2,X,color,ls='-',T=1,hatch=None,alpha=0.4,facecolor='none',edgecolor='none'): dou=com.get_dou(X=X,Q2=Q2) #ax.plot(X,dou['central'],color=color,ls=ls) #p1,=ax.plot(X,dou['central'],color=color,ls=ls) p2=fill_between(X, (dou['central']-dou['asym err -']*T), (dou['central']+dou['asym err +']*T), ax=ax, facecolor=facecolor, edgecolor=edgecolor, alpha=alpha, hatch=hatch) #return (p2,p1) return p2
def plot(fname,ax,Q2,T=1,color='r',hatch='...',edgecolor='k',alpha=1): path='../CJ15data/FITS_dquark_series' DATA=FITPACK().get_PDFs(path+'/'+fname) D=DATA['Q2'][Q2] #print D.keys() #p1,=ax.plot(D['x'],D['d/u'],color+'-') p2=fill_between(D['x'], (D['d/u']-D['err-d/u']*T), (D['d/u']+D['err-d/u']*T), ax=ax, facecolor=color, edgecolor=edgecolor, alpha=alpha, hatch=hatch) #return (p2,p1) return p2
def plot_dataset(self,dataset,T=10): k=dataset D=self.D ax=self.AX[k] data=D[k]['DATA'] derr=D[k]['DERROR'] theory=D[k]['THEORY'] terr=D[k]['ERROR'] y=D[k]['Y'] p1,=ax.plot(y,theory,'r-') p2=fill_between(y,theory-terr*T,theory+terr*T, ax=ax, facecolor='yellow', edgecolor='yellow') p3=ax.errorbar(y,data,yerr=derr,fmt='k.') return (p2,p1),p3
def make_plot(self): D=self.D ax=py.subplot(111) Y=D['d0Lasy_e15']['Y'] T=D['d0Lasy_e15']['THEORY'] ET=D['d0Lasy_e15']['ERROR'] iT= interp1d(Y,T,kind='cubic') iET= interp1d(Y,ET, kind='cubic') Y=np.linspace(np.amin(Y),np.amax(Y),100) T=10 p2=fill_between(Y,iT(Y)-iET(Y)*T,iT(Y)+iET(Y)*T, ax=ax, facecolor='yellow', edgecolor='yellow') p1,=ax.plot(Y,iT(Y),'r-') H=[(p2,p1)] L=[tex('CJ15')] dmap={} dmap['cdfLasy05'] = {'color':'g','marker':'d'} dmap['d0Lasy_e15'] = {'color':'b','marker':'o'} dmap['d0Lasy13'] = {'color':'c','marker':'^'} for k in D.keys(): color=dmap[k]['color'] marker=dmap[k]['marker'] markersize=4 p3=ax.errorbar(D[k]['Y'],D[k]['DATA'],\ yerr=D[k]['DERROR'],fmt=color+marker,mfc=color,mec=color,\ markersize=markersize,zorder=1,alpha=0.9) H.append(p3) #L.append(tex(k.replace('_',''))) L=[tex('CJ15'),tex('CDF')+r'$\ e$',tex('D\O')+r'$\ \mu$',tex('D\O')+r'$\ e$'] ax.set_xlabel(r'$\eta_{\ell}$',size=25) ax.set_ylabel(r'$A_{\ell}$',size=25) ax.legend(H,L,frameon=0,loc=3,fontsize=22,numpoints=1) ###ax.text(0.5,0.8,tex('nrep=%d'%nrows),transform=ax.transAxes,size=20) py.tick_params(axis='both',labelsize=20) py.tight_layout() py.savefig('gallery/Lasy.pdf') py.close()
print u.keys() # these lines add latex typefont. # is kind of slow, so uncomment while a plot is been coded #from matplotlib import rc #rc('font',**{'family':'sans-serif','sans-serif':['Helvetica']}) #rc('text', usetex=True) # create matplotlib instance ax=py.subplot(111) # plot error band T=10.0 UP=u['f0']+T*u['df+'] DO=u['f0']-T*u['df-'] fill_between(X,DO,UP,ax=ax,label=tex('u'),facecolor='r',edgecolor='r',alpha=0.5,hatch=None) # plot central ax.plot(X,u['f0'],'r-',label=tex('u')) # makeup ax.legend(loc=3,frameon=0,fontsize=20) ax.semilogx() ax.set_xlabel(tex('x'),size=20) ax.set_ylabel(tex('xPDF(x)'),size=20) py.tight_layout() py.savefig('plots/advanced.pdf')
error=CJ15['Q2'][Q2]['err-x'+flav]*10 #args={} #args['ax']=ax #args['x']=X #args['central']=central #args['lower']=central-error #args['upper']=central+error #args['central color']='r' #args['central line style']='-' #args['band color']='#FFFF00' #args['label']=tex(grp) #CJ_Legend = plot_band(args) p1,=ax.plot(X,central,'r-') p2=fill_between(X,central-error,central+error,ax=ax, facecolor='#FFFF00', edgecolor='#FFFF00', alpha=1.0,hatch=None) else: X=np.linspace(1e-3,0.9,1000) grp_=grpmap[grp]['grp'] col=grpmap[grp]['color'] ax.plot(X,[get_pdfs(flav,x,Q2,iset,grp_) for x in X],col,label=tex(grp)) # make legend if flav=='g': H_,L_ = ax.get_legend_handles_labels() H=[(p2,p1)] L=[tex('CJ15')] for h in H_: H.append(h) for l in L_: L.append(l)