__init__.py 3.9 KB
Newer Older
Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# ================= FILE HEADER ========================================
#
#   myplotlib v0.0.0,
#
#   @file      __init__.py
#   @author    Yori 'AGy' Fournier
#   @licence   CC-BY-SA
#
#   Import and Configuration file for myplotlib
#
#   @section Import
#
#   myplotlib is base on matplotlib therefore it requires
#   Figure and Axes as main classes and a few further functions.
#
#   @section Config
#
#   Default value for user parameters
#   and configuration for the default plotting
#
#   @section Module Import
#
#   Import of myplotlib classes and function
#
#   @section History
#
#   v 0.0.0 - __init__.py file for the myplotlib module
#
# ======================================================================
#
#
# IMPORT ---------------------------------------------------------------
import os as os
import numpy as np

# matplotlib
from matplotlib.pyplot import figure
from matplotlib.pyplot import rc
42
43
from matplotlib.pyplot import show, draw, ion, ioff, clf
from matplotlib.pyplot import close as mpclose
Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
44
45
46
from matplotlib.pyplot import fignum_exists, savefig
from matplotlib.axes import Axes
from matplotlib.figure import Figure
47
from matplotlib import is_interactive
Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
48
from matplotlib import rcParams
49
50
from matplotlib import use

51
rcParams['backend'] = u'TkAgg'
52

Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
53
54
55
56
57
58
59
60
61
62
63
64
# myplotlib
from myData import MyData

# FORM -----------------------------------------------------------------
INFO = " > info-: "
WARN = " > warn-: "
SEVR = " > sevr-: "
DBUG = " > dbug-: "
SPCE = " > -----: "

# CONFIGURATION --------------------------------------------------------
# myFig
65
D_FIGNUM    = 0          # default figure number
66
67
68
69
70
D_FIGSIZE   = (8., 6.)   # default figure size
D_REFORMAT  = True       # default reformat value
D_FORMATTED = False      # default formatted value
D_RAWDATA   = MyData()   # default raw data
D_INPUTARG  = 'current'  # default Input argument
Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
71
72

# myIOs
73
D_IPATH     = '../'      # default path to project
Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
74
75

# print2file
76
77
D_OPATH     = 'myplotlib/img/'  # default path to ouput
D_OFORMAT   = 'png'      # default format for ouput
Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
78
79

# Debug
80
D_DEBUG     = True      # default debug value
Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
81
82

# GLOBAL VARIABLE ------------------------------------------------------
83
G_RAWDATAS  = {'current': MyData()}  # raw data Object
84
_G_WINDOWS = []
Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
85
86
87
88
89
90
91
92
93
94
95
96

# PLOTTING CONFIGURATION -----------------------------------------------
rc('font', family='serif')
rc('font', size='22')
rc('text', usetex=True)  # need dvipng, ghostscript, and Agg
rc('lines', linewidth=1.5)
rc('lines', markersize=6)
rc('axes', linewidth=1.5)
rc('xtick.major', width=1.5, pad=10., size=10.)
rc('ytick.major', width=1.5, pad=8., size=10.)
rc('xtick.minor', width=1.5, size=5.)
rc('ytick.minor', width=1.5, size=5.)
97
rc('figure', dpi = 75.0)
Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
98
99
100
101
102
103
104
105
106
107
108

# FUNCTIONS ------------------------------------------------------------
# MyAxes: Overlay on matplotlib.Axes class
from myAxes import MyAxes

# MyIOs.*: input/output function for testing
from myIOs import readStupidData, readStupidData2

# MyFig: Overlay on matplotlib.Figure class
from myFig import MyFig

109
# MyFig: Overlay on matplotlib.FigureManager class
110
111
112
113
114
115
116
117
if rcParams['backend'] == u'TkAgg':
    from myWin_TkAgg import MyWin_TkAgg as MyWin
elif rcParams['backend'] == u'GTKAgg':
    from myWin_GTKAgg import MyWin_GTKAgg as MyWin
elif rcParams['backend'] == u'WXAgg':
    from myWin_WXAgg import MyWin_WXAgg as MyWin
else:
    print(SEVR + "The backend you choosed is not supported interactive mode not available")
118

Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
119
# myTool.*: interface functions to use myplotlib interactively
120
121
122
from myTool import print2file, print2screen, printListCurrentWindows
from myTool import getWindow, getFigOnWindow, drawFigOnWindow
from myTool import closeWindow, closeAllWindows
Yori 'AGy' Fournier's avatar
Yori 'AGy' Fournier committed
123
124
125
126
127
128

# MyFig4Test: Overlay of Figure for testing
from myFig4Test import MyFig4Test

# some plotting routine for testing
from myPlot4Test import somePlottingRoutine
129
130

from test import myTest
131
from test import test400, test300, test401, test402
132

133
testList = [test400, test300, test401, test402]