|
|
|
import os |
|
import numpy as np |
|
import matplotlib |
|
matplotlib.use('Agg') |
|
import matplotlib.pyplot as plt |
|
from pylab import * |
|
|
|
|
|
|
|
def plotting(plt, data, colori, pltLabel): |
|
|
|
|
|
for i in range(np.shape(data)[0]): |
|
plt.subplot(4, 5, 5 * i + 1) |
|
plt.plot(np.transpose(data[i])[0, :], np.transpose(data[i])[1, :], colori, label=pltLabel) |
|
plt.xlabel('Time') |
|
plt.ylabel('IL') |
|
plt.grid(True) |
|
|
|
plt.subplot(4, 5, 5 * i + 2) |
|
plt.plot(np.transpose(data[i])[0, :], np.transpose(data[i])[2, :], colori, label=pltLabel) |
|
plt.xlabel('Time') |
|
plt.ylabel('OO') |
|
plt.grid(True) |
|
|
|
plt.subplot(4, 5, 5 * i + 3) |
|
plt.plot(np.transpose(data[i])[0, :], np.transpose(data[i])[3, :], colori, label=pltLabel) |
|
plt.xlabel('Time') |
|
plt.ylabel('a') |
|
plt.grid(True) |
|
|
|
plt.subplot(4, 5, 5 * i + 4) |
|
plt.plot(np.transpose(data[i])[0, :], np.transpose(data[i])[5, :], colori, label=pltLabel) |
|
plt.xlabel('Time') |
|
plt.ylabel('OUTL') |
|
plt.grid(True) |
|
|
|
plt.subplot(4, 5, 5 * i + 5) |
|
plt.plot(np.transpose(data[i])[0, :], -1 * np.transpose(data[i])[4, :], colori, label=pltLabel) |
|
plt.xlabel('Time') |
|
plt.ylabel('r') |
|
plt.grid(True) |
|
|
|
return plt |
|
|
|
|
|
def savePlot(players, curGame, Rsltdnn, RsltFrmu, RsltOptm, RsltRnd, config, m): |
|
|
|
if config.if_titled_figure: |
|
plt.suptitle( |
|
"sum OurPolicy=" + str(round(sum(Rsltdnn), 2)) + "; sum Strm=" + str(round(sum(RsltFrmu), 2)) + |
|
"; sum BS=" + str(round(sum(RsltOptm), 2)) + "; sum Rnd=" + str(round(sum(RsltRnd), 2)) + "\n" + |
|
"Ag OurPolicy=" + str([round(Rsltdnn[i], 2) for i in range(config.NoAgent)]) + "; Ag Strm=" + |
|
str([round(RsltFrmu[i], 2) for i in range(config.NoAgent)]) + "; Ag BS=" + |
|
str([round(RsltOptm[i], 2) for i in range(config.NoAgent)]) + "; Ag Rnd=" + |
|
str([round(RsltRnd[i], 2) for i in range(config.NoAgent)]), |
|
fontsize=12 |
|
) |
|
|
|
|
|
legend = plt.legend(bbox_to_anchor=(-1.4, -.165, 1., -.102), shadow=True, ncol=4) |
|
|
|
|
|
plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=.5, hspace=.5) |
|
|
|
path = os.path.join(config.figure_dir, 'saved_figures/') |
|
if not os.path.exists(path): |
|
os.mkdir(path) |
|
plt.savefig(path + str(curGame) + '-' + str(m) + '.png', format='png') |
|
print("figure" + str(curGame) + ".png saved in folder \"saved_figures\"") |
|
plt.close(curGame) |
|
|