# -*- coding: utf-8 -*-

try:
   import pyfits
except:
   from astropy.io import fits as pyfits
from numpy import *
from matplotlib.pyplot import *
import os
from matplotlib.colors import LogNorm


def plot_median_profile(files):

    for filename in files:
        hdulist = pyfits.open(filename)
        imagelist = hdulist['IMAGING_DATA_SC'].data
        
        hdulist_ref = pyfits.open(filename_ref)
        specRes = hdulist['PRIMARY'].header["HIERARCH ESO INS SPEC RES"]
        pola = hdulist['PRIMARY'].header["HIERARCH ESO INS POLA MODE"]
        dit = hdulist['PRIMARY'].header["HIERARCH ESO DET2 SEQ1 DIT"]
        date = hdulist['PRIMARY'].header["MJD-OBS"]   
        dprtype = hdulist['PRIMARY'].header["HIERARCH ESO DPR TYPE"]
        grism="Old grism"
        median_profile = np.median(imagelist.mean(axis=0),axis=0)
        median_profile = median_profile - mean(median_profile[750:1500])
        if date > 58770:
            median_profile /= 3.5
            grism="New grism"
        
        plot(median_profile, label=grism+","+dprtype+","+str(dit)+","+str(date))
    xlabel("x pixels")
    ylabel("ADU")
    ylim((-5,None ))
    legend()
    title("Background {}".format(specRes))
    

figure("Metrology Background HIGH")
clf()
files=["/data/1/2019-08-25/GRAVITY_PARALLEL_DARK237_0091.fits",
       "/data/1/2019-08-25/GRAVITY_PARALLEL_DARK237_0105.fits",
       "/data/1/2019-06-20/GRAVITY_PARALLEL_SKY170_0002.fits",
       "/data/1/2019-06-20/GRAVITY_PARALLEL_SKY171_0007.fits",
       "/data/1/2019-10-15/GRAVITY_PARALLEL_SKY289_0030.fits"]
       
plot_median_profile(files)


figure("Metrology Background MEDIUM")
clf()
files=["/data/1/2019-08-12/GRAVITY_PARALLEL_SKY225_0026.fits",
       "/data/1/2019-08-12/GRAVITY_PARALLEL_SKY224_0011.fits",
       "/data/1/2019-10-15/GRAVITY_PARALLEL_SKY289_0033.fits"]
plot_median_profile(files)
