diff options
| author | Daniel Saad Nogueira Nunes <danielsaad@users.noreply.github.com> | 2023-03-27 18:45:45 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-27 18:45:45 +0000 |
| commit | 47f972639bc616ec1c9446774a2909726cbf050c (patch) | |
| tree | 01a2fb46a13cd9af05c1ce76013a1e173ab6c518 /src/admin | |
| parent | c1ad143de1e86e0a1bd4c42883befcbc037387f8 (diff) | |
| download | boca-47f972639bc616ec1c9446774a2909726cbf050c.tar.gz boca-47f972639bc616ec1c9446774a2909726cbf050c.zip | |
Create piechart.py (#25)
Adding piechart.py to generate piecharts.
Diffstat (limited to 'src/admin')
| -rw-r--r-- | src/admin/report/piechart.py | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/admin/report/piechart.py b/src/admin/report/piechart.py new file mode 100644 index 0000000..75e5a9d --- /dev/null +++ b/src/admin/report/piechart.py @@ -0,0 +1,40 @@ +import matplotlib.pyplot as plt +import sys + +filename = sys.argv[1] +title = sys.argv[2] + +label=[] +value=[] +color = [] +with open(filename,'r') as f: + for line in f: + tokens = line.split() + c = tokens[-1] + problem_data = ' '.join(tokens[0:-1]) + l,v = problem_data.split(':') + if(int(v)>0): + label.append(l+'('+v+')') + value.append(v) + color.append(c) + + +wedges, texts, autotexts = plt.pie(value, colors=color,autopct=lambda p: '{:.1f}%'.format(round(p)) if p > 0 else '',pctdistance=1.2,wedgeprops= {"edgecolor":"black", + 'linewidth': 1, + 'antialiased': False}) + +plt.legend(wedges, label, + loc="center left", + bbox_to_anchor=(1.1, 0, 0.5,1)) +# Add title +plt.title(title,pad=20) +if(len(sys.argv)<=3): + plt.legend(label, bbox_to_anchor=(1.1,0.5), loc="center right", fontsize=10, + bbox_transform=plt.gcf().transFigure,shadow=True) +else: + plt.legend(label,loc="lower center", bbox_to_anchor=(0.5,-0.1), fontsize=10, + bbox_transform=plt.gcf().transFigure,shadow=True) +# Show plot +# plt.tight_layout() +plt.savefig(filename.replace('.txt','.png'),dpi=600,transparent=True, bbox_inches="tight") + |