Refatoração dos métodos de exibir e salvar gráfico
This commit is contained in:
parent
b0fd83a839
commit
3cc0e0ebda
@ -10,10 +10,8 @@ from mpl_toolkits.mplot3d import Axes3D
|
|||||||
#from sklearn.cross_validation import KFold
|
#from sklearn.cross_validation import KFold
|
||||||
from pyFTS.benchmarks import Measures
|
from pyFTS.benchmarks import Measures
|
||||||
from pyFTS.partitioners import Grid
|
from pyFTS.partitioners import Grid
|
||||||
from pyFTS.common import Membership, FuzzySet, FLR, Transformations
|
from pyFTS.common import Membership, FuzzySet, FLR, Transformations, Util
|
||||||
import time
|
|
||||||
|
|
||||||
current_milli_time = lambda: int(round(time.time() * 1000))
|
|
||||||
|
|
||||||
def getIntervalStatistics(original, models):
|
def getIntervalStatistics(original, models):
|
||||||
ret = "Model & RMSE & MAPE & Sharpness & Resolution & Coverage \\ \n"
|
ret = "Model & RMSE & MAPE & Sharpness & Resolution & Coverage \\ \n"
|
||||||
@ -37,15 +35,6 @@ def plotDistribution(dist):
|
|||||||
vmin=0, vmax=1, edgecolors=None)
|
vmin=0, vmax=1, edgecolors=None)
|
||||||
|
|
||||||
|
|
||||||
def uniquefilename(name):
|
|
||||||
if '.' in name:
|
|
||||||
tmp = name.split('.')
|
|
||||||
return tmp[0] + str(current_milli_time()) + '.' + tmp[1]
|
|
||||||
else:
|
|
||||||
return name + str(current_milli_time())
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def plotComparedSeries(original, models, colors, typeonlegend=False, save=False, file=None,tam=[20, 5]):
|
def plotComparedSeries(original, models, colors, typeonlegend=False, save=False, file=None,tam=[20, 5]):
|
||||||
fig = plt.figure(figsize=tam)
|
fig = plt.figure(figsize=tam)
|
||||||
ax = fig.add_subplot(111)
|
ax = fig.add_subplot(111)
|
||||||
@ -89,10 +78,9 @@ def plotComparedSeries(original, models, colors, typeonlegend=False, save=False,
|
|||||||
ax.set_xlabel('T')
|
ax.set_xlabel('T')
|
||||||
ax.set_xlim([0, len(original)])
|
ax.set_xlim([0, len(original)])
|
||||||
|
|
||||||
if save:
|
Util.showAndSaveImage(fig,file,save)
|
||||||
plt.show()
|
|
||||||
fig.savefig(uniquefilename(file))
|
|
||||||
plt.close(fig)
|
|
||||||
|
|
||||||
|
|
||||||
def plotComparedIntervalsAhead(original, models, colors, distributions, time_from, time_to,
|
def plotComparedIntervalsAhead(original, models, colors, distributions, time_from, time_to,
|
||||||
@ -158,10 +146,7 @@ def plotComparedIntervalsAhead(original, models, colors, distributions, time_fro
|
|||||||
ax.set_xlabel('T')
|
ax.set_xlabel('T')
|
||||||
ax.set_xlim([0, len(original)])
|
ax.set_xlim([0, len(original)])
|
||||||
|
|
||||||
if save:
|
Util.showAndSaveImage(fig, file, save)
|
||||||
plt.show()
|
|
||||||
fig.savefig(uniquefilename(file))
|
|
||||||
plt.close(fig)
|
|
||||||
|
|
||||||
|
|
||||||
def plotCompared(original, forecasts, labels, title):
|
def plotCompared(original, forecasts, labels, title):
|
||||||
|
@ -17,3 +17,10 @@ def boxcox(original, plambda):
|
|||||||
else:
|
else:
|
||||||
modified = [math.log(original[t]) for t in np.arange(0, n)]
|
modified = [math.log(original[t]) for t in np.arange(0, n)]
|
||||||
return np.array(modified)
|
return np.array(modified)
|
||||||
|
|
||||||
|
|
||||||
|
def Z(original):
|
||||||
|
mu = np.mean(original)
|
||||||
|
sigma = np.std(original)
|
||||||
|
z = [(k - mu)/sigma for k in original]
|
||||||
|
return z
|
||||||
|
20
common/Util.py
Normal file
20
common/Util.py
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
import time
|
||||||
|
import matplotlib.pyplot as plt
|
||||||
|
|
||||||
|
|
||||||
|
current_milli_time = lambda: int(round(time.time() * 1000))
|
||||||
|
|
||||||
|
|
||||||
|
def uniquefilename(name):
|
||||||
|
if '.' in name:
|
||||||
|
tmp = name.split('.')
|
||||||
|
return tmp[0] + str(current_milli_time()) + '.' + tmp[1]
|
||||||
|
else:
|
||||||
|
return name + str(current_milli_time())
|
||||||
|
|
||||||
|
|
||||||
|
def showAndSaveImage(fig,file,flag):
|
||||||
|
if flag:
|
||||||
|
plt.show()
|
||||||
|
fig.savefig(uniquefilename(file))
|
||||||
|
plt.close(fig)
|
@ -4,12 +4,12 @@ import matplotlib as plt
|
|||||||
import matplotlib.colors as pltcolors
|
import matplotlib.colors as pltcolors
|
||||||
import matplotlib.pyplot as plt
|
import matplotlib.pyplot as plt
|
||||||
from mpl_toolkits.mplot3d import Axes3D
|
from mpl_toolkits.mplot3d import Axes3D
|
||||||
from pyFTS.common import Membership
|
from pyFTS.common import Membership, Util
|
||||||
|
|
||||||
|
|
||||||
def plotSets(data, sets, titles):
|
def plotSets(data, sets, titles, tam=[12, 10], save=False, file=None):
|
||||||
num = len(sets)
|
num = len(sets)
|
||||||
fig = plt.figure(figsize=[12, 10])
|
fig = plt.figure(figsize=tam)
|
||||||
maxx = max(data)
|
maxx = max(data)
|
||||||
minx = min(data)
|
minx = min(data)
|
||||||
h = 1/num
|
h = 1/num
|
||||||
@ -24,4 +24,6 @@ def plotSets(data, sets, titles):
|
|||||||
elif s.mf == Membership.gaussmf:
|
elif s.mf == Membership.gaussmf:
|
||||||
tmpx = [ kk for kk in np.arange(s.lower, s.upper)]
|
tmpx = [ kk for kk in np.arange(s.lower, s.upper)]
|
||||||
tmpy = [s.membership(kk) for kk in np.arange(s.lower, s.upper)]
|
tmpy = [s.membership(kk) for kk in np.arange(s.lower, s.upper)]
|
||||||
ax0.plot(tmpx, tmpy)
|
ax0.plot(tmpx, tmpy)
|
||||||
|
|
||||||
|
Util.showAndSaveImage(fig, file, save)
|
Loading…
Reference in New Issue
Block a user