From f16ec78092a963bd3a3b0bdd284ca7336572ca99 Mon Sep 17 00:00:00 2001 From: Quentin Rodier <quentin.rodier@meteo.fr> Date: Mon, 19 Apr 2021 22:34:13 +0200 Subject: [PATCH] Quentin 19/04/2021: minor python plot adapt size of png files and correction of arguments for xx and yy axes for XY lines plot --- .../003_python/plot_001_2DRelief.py | 16 ++++----- src/LIB/Python/Panel_Plot.py | 33 ++++++++++--------- 2 files changed, 25 insertions(+), 24 deletions(-) diff --git a/MY_RUN/KTEST/001_2Drelief/003_python/plot_001_2DRelief.py b/MY_RUN/KTEST/001_2Drelief/003_python/plot_001_2DRelief.py index 8d3ceb159..5dcaac4da 100644 --- a/MY_RUN/KTEST/001_2Drelief/003_python/plot_001_2DRelief.py +++ b/MY_RUN/KTEST/001_2Drelief/003_python/plot_001_2DRelief.py @@ -163,7 +163,7 @@ Llinecolor = ['r'] LaxisColor = Llinecolor Llvl = [0]*len(Lplot) Ltime = [Dvar['f1']['time']] -fig6 = Panel6.pXY_lines(Lzz=LaxeZ, Lvar=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, +fig6 = Panel6.pXY_lines(Lyy=LaxeZ, Lxx=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, Llinecolor=Llinecolor, LaxisColor=LaxisColor, Ltime=Ltime) Lplot = [ Dvar['f1']['THT-LSTHM'][:,127]] @@ -176,7 +176,7 @@ Lxlim = [(-0.8,0.1)] Llinecolor = ['g'] LaxisColor = Llinecolor Llvl = [0]*len(Lplot) -fig7 = Panel6.pXY_lines(Lzz=LaxeZ, Lvar=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle,ax=fig6.axes, id_overlap=1, +fig7 = Panel6.pXY_lines(Lyy=LaxeZ, Lxx=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle,ax=fig6.axes, id_overlap=1, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, Llinecolor=Llinecolor,LaxisColor=LaxisColor, Ltime=Ltime) Lplot = [ Dvar['f2']['WT'][:,127]] @@ -191,7 +191,7 @@ Llinecolor = ['r'] LaxisColor = Llinecolor Llvl = [0]*len(Lplot) Ltime = [Dvar['f2']['time']] -fig8 = Panel6.pXY_lines(Lzz=LaxeZ, Lvar=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, +fig8 = Panel6.pXY_lines(Lyy=LaxeZ, Lxx=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, Llinecolor=Llinecolor, LaxisColor=LaxisColor, Ltime=Ltime, ax=fig7.axes) Lplot = [ Dvar['f2']['THT-LSTHM'][:,127]] @@ -204,7 +204,7 @@ Lxlim = [(-0.1,0.2)] Llinecolor = ['g'] LaxisColor = Llinecolor Llvl = [0]*len(Lplot) -fig9 = Panel6.pXY_lines(Lzz=LaxeZ, Lvar=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, ax=fig8.axes, id_overlap=1, +fig9 = Panel6.pXY_lines(Lyy=LaxeZ, Lxx=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, ax=fig8.axes, id_overlap=1, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, Llinecolor=Llinecolor, LaxisColor=LaxisColor, Ltime=Ltime) # WT and UT-LSUM @@ -220,7 +220,7 @@ Llinecolor = ['r'] LaxisColor = Llinecolor Llvl = [0]*len(Lplot) Ltime = [Dvar['f1']['time']] -fig10 = Panel6.pXY_lines(Lzz=LaxeZ, Lvar=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, +fig10 = Panel6.pXY_lines(Lyy=LaxeZ, Lxx=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, Llinecolor=Llinecolor, LaxisColor=LaxisColor, Ltime=Ltime, ax=fig9.axes) Lplot = [ Dvar['f1']['UT-LSUM'][:,127]] @@ -233,7 +233,7 @@ Lxlim = [(-0.2,0.8)] Llinecolor = ['g'] LaxisColor = Llinecolor Llvl = [0]*len(Lplot) -fig11 = Panel6.pXY_lines(Lzz=LaxeZ, Lvar=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, ax=fig10.axes, id_overlap=1, +fig11 = Panel6.pXY_lines(Lyy=LaxeZ, Lxx=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, ax=fig10.axes, id_overlap=1, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, Llinecolor=Llinecolor,LaxisColor=LaxisColor, Ltime=Ltime) Lplot = [ Dvar['f2']['WT'][:,127]] @@ -248,7 +248,7 @@ Llinecolor = ['r'] LaxisColor = Llinecolor Llvl = [0]*len(Lplot) Ltime = [Dvar['f2']['time']] -fig12 = Panel6.pXY_lines(Lzz=LaxeZ, Lvar=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, +fig12 = Panel6.pXY_lines(Lyy=LaxeZ, Lxx=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, Llinecolor=Llinecolor, LaxisColor=LaxisColor, Ltime=Ltime, ax=fig11.axes) Lplot = [ Dvar['f2']['UT-LSUM'][:,127]] @@ -261,7 +261,7 @@ Lxlim = [(-2.0,2.0)] Llinecolor = ['g'] LaxisColor = Llinecolor Llvl = [0]*len(Lplot) -fig13 = Panel6.pXY_lines(Lzz=LaxeZ, Lvar=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle,ax=fig12.axes, id_overlap=1, +fig13 = Panel6.pXY_lines(Lyy=LaxeZ, Lxx=Lplot, Lxlab=Lxlab, Lylab=Lylab, Ltitle=Ltitle,ax=fig12.axes, id_overlap=1, Lylim=Lylim, Lxlim=Lxlim, Llinelabel=Llinelabel, Llinecolor=Llinecolor, LaxisColor=LaxisColor, Ltime=Ltime) Panel6.save_graph(6,fig13) diff --git a/src/LIB/Python/Panel_Plot.py b/src/LIB/Python/Panel_Plot.py index f063e48c7..dc5cfb6ff 100644 --- a/src/LIB/Python/Panel_Plot.py +++ b/src/LIB/Python/Panel_Plot.py @@ -32,7 +32,7 @@ class PanelPlot(): # Initialization of the panel plots self.fig = plt.figure(figsize=(self.Lfigsize[0],self.Lfigsize[1])) - self.fig.set_dpi(400) + self.fig.set_dpi(125) self.fig.suptitle(self.bigtitle,fontsize=16) def save_graph(self, iplt, fig): @@ -309,14 +309,14 @@ class PanelPlot(): return self.fig - def pXY_lines(self, Lzz=[], Lvar=[], Lxlab=[], Lylab=[], Ltitle=[], Llinetype=[], Llinewidth=[], - Llinecolor=[], Llinelabel=[], Lfacconv=[], ax=[], id_overlap=None, Lxlim=[], + def pXY_lines(self, Lxx=[], Lyy=[], Lxlab=[], Lylab=[], Ltitle=[], Llinetype=[], Llinewidth=[], + Llinecolor=[], Llinelabel=[], LfacconvX=[], LfacconvY=[], ax=[], id_overlap=None, Lxlim=[], Lylim=[], Ltime=[], LaxisColor=[]): """ XY (multiple)-lines plot Arguments : - - Lzz : List of z coordinates variable [1D] #TODO : Renommer argument Lvar en Lxx et Lzz en Lyy et ajouter Lfacconv pour les deux axes. Impact tous les cas test avec lignes X/Y - - Lvar : List of variables to plot [1D] + - Lxx : List of variables to plot or coordinates along the X axis #TODO : ajouter Lfacconv pour les deux axes. Impact tous les cas test avec lignes X/Y + - Lyy : List of variables to plot or coordinates along the Y axis - Lxlab : List of x-axis label - Lylab : List of y-axis label - Lxlim : List of x (min, max) value plotted @@ -327,7 +327,7 @@ class PanelPlot(): - Llinetype : List of line types - Lcolorlines: List of color lines - Llinelabel : List of legend label lines - - Lfacconv : List of factors for unit conversion of each variables + - LfacconvX/Y: List of factors for unit conversion of the variables/coordinates to plot on X and Y axis - ax : List of fig.axes for ploting multiple different types of plots in a subplot panel - Lid_overlap: List of number index of plot to overlap current variables - LaxisColor : List of colors for multiple x-axis overlap @@ -335,14 +335,15 @@ class PanelPlot(): self.ax = ax firstCall = (len(self.ax) == 0) # Defaults value convert to x number of variables list - if not Lfacconv: Lfacconv = [1.0]*len(Lvar) - if not Llinewidth: Llinewidth = [1.0]*len(Lvar) - if not Llinecolor: Llinecolor = ['blue']*len(Lvar) - if not Llinetype: Llinetype = ['-']*len(Lvar) - if not Llinelabel: Llinelabel = ['']*len(Lvar) - if not LaxisColor: LaxisColor = ['black']*len(Lvar) - if not Lylab: Lylab = ['']*len(Lvar) - if not Lxlab: Lxlab = ['']*len(Lvar) + if not LfacconvX: LfacconvX = [1.0]*len(Lxx) + if not LfacconvY: LfacconvY = [1.0]*len(Lxx) + if not Llinewidth: Llinewidth = [1.0]*len(Lxx) + if not Llinecolor: Llinecolor = ['blue']*len(Lxx) + if not Llinetype: Llinetype = ['-']*len(Lxx) + if not Llinelabel: Llinelabel = ['']*len(Lxx) + if not LaxisColor: LaxisColor = ['black']*len(Lxx) + if not Lylab: Lylab = ['']*len(Lxx) + if not Lxlab: Lxlab = ['']*len(Lxx) if firstCall: # 1st call iax = 0 @@ -357,12 +358,12 @@ class PanelPlot(): iax = len(self.ax)-1 # The ax index of the new coming plot is the length of the existant ax -1 for indices matter # On all variables to plot - for i,var in enumerate(Lvar): + for i,var in enumerate(Lxx): # Print time validity if Ltime: self.showTimeText(self.ax, iax, str(Ltime[i])) # Plot - cf = self.ax[iax].plot(var*Lfacconv[i], Lzz[i], color=Llinecolor[i], ls=Llinetype[i], + cf = self.ax[iax].plot(Lxx[i]*LfacconvX[i], Lyy[i]*LfacconvY[i], color=Llinecolor[i], ls=Llinetype[i], label=Llinelabel[i], linewidth=Llinewidth[i]) # Legend #TODO : Handling legend with overlap two axis lines in the same box. For now, placement is by hand -- GitLab