コード例 #1
0
ファイル: ratio.py プロジェクト: Jeff182/CJ
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)
コード例 #2
0
ファイル: db_ub.py プロジェクト: Jeff182/CJ
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")
コード例 #3
0
ファイル: xpdf.py プロジェクト: Jeff182/CJ
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)
コード例 #4
0
ファイル: wasy.py プロジェクト: Jeff182/CJ
 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
コード例 #5
0
ファイル: ratio.py プロジェクト: Jeff182/CJ
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)
コード例 #6
0
ファイル: dou.py プロジェクト: Jeff182/CJ
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
コード例 #7
0
ファイル: d_over_u.py プロジェクト: Jeff182/CJ
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
コード例 #8
0
ファイル: wasy_NS.py プロジェクト: Jeff182/CJ
 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
コード例 #9
0
ファイル: Lasy.py プロジェクト: Jeff182/CJ
  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()
コード例 #10
0
ファイル: advanced.py プロジェクト: Jeff182/CJ
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')


コード例 #11
0
ファイル: simple.py プロジェクト: Jeff182/CJ
      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)