Skip to content

Instantly share code, notes, and snippets.

@raviprakashgiri
Created January 25, 2016 06:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save raviprakashgiri/39b686ae8cd9a5e151c8 to your computer and use it in GitHub Desktop.
Save raviprakashgiri/39b686ae8cd9a5e151c8 to your computer and use it in GitHub Desktop.
Four line graphs
# Author Ravi Prakash Giri
import re
import matplotlib.pyplot as plt
from math import log
eq_files=[]
values=[]
fig, ax = plt.subplots(figsize=(120,7))
mkr=['*','o','h','d','p','8','>','^','<',7]
clr=['b','g','r','c','m','y','k','peru','yellowgreen','dodgerblue','purple','lightgreen','lightblue','palevioletred','teal','olive']
x=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]
xy=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,]
'''
c=[float(i)/16 for i in x]
y=[-4/log(i,2) for i in c]
ax.plot(x,y,color=clr[0], marker = mkr[3],label='Algo 3')
'''
#c=[float(i)/16 for i in x]
#y=[-4/(log(i,2)-4) for i in x]
#ax.plot(x,y,color=clr[0],linestyle='--', marker = '.',label='Algo 1')
#x=[1,3,4,5,2.3]
y=[ 2.7303828634223475, 3.50540323873937, 4.266557629530974, 5.0841342602424575, 6.016230668070605, 7.113513102390629, 8.451206998367594, 10.140236947648981, 12.363023674438088, 15.445642309716325, 20.038417486900514, 27.657121230391784, 42.84731480714826, 88.33415779342755]
ax.plot(x[1:],y,color=clr[4], marker = 'o',markersize=3.8,label='Algorithm 1')
#x=[1,3,4,5,2.3]
y=[-16/(log(i,2)-4) for i in xy]
ax.plot(xy,y,color=clr[1], marker = '^',markersize=3.8,label='Algorithm 2')
#x=[1,3,4,5,2.3]
y=[-4/(log(i,2)-4) for i in x]
ax.plot(x,y,color=clr[2],linestyle='-', marker = 'd',markersize=3.8,label='Algorithm 3')
#x=[1,3,4,5,2.3]
y=[-8/(log(i,2)-4) for i in x]
ax.plot(x,y,color=clr[3], marker = '*',markersize=3.8,label='Algorithm 4')
plt.legend()
ax.grid(alpha=0.4,zorder=0)
#ax.set_title("")
ax.set_xlabel("Per Table Run Size (|" r'$\rho_{*,*,*}$' "|)")
ax.set_ylabel("No. of Encryptions/Decryptions")
#ax.set_yscale('log', basey=2)
#ax.set_ylim([0.5,max(max(values))*2])
#ax.set_xlim([1,10])
ax.set_xticks([i for i in range(1,16)])
fig.set_size_inches(3.5, 3.5)
plt.gcf().subplots_adjust(bottom=0.15,left=0.17)
#plt.xticks(rotation=70)
ax.legend(prop={'size':7},fancybox=False,framealpha=0.5,markerscale=0.8,loc='best')
ax.get_legend().get_title().set_fontsize('8')
ax.get_legend().get_frame().set_linewidth(0.4)
#ax.title.set_fontsize(10)
ax.xaxis.label.set_fontsize(7)
ax.yaxis.label.set_fontsize(7)
for item in ax.get_xticklabels():
item.set_fontsize(6)
for item in ax.get_yticklabels():
item.set_fontsize(6)
#plt.savefig("equations.png",dpi=100)
plt.savefig("key_new.png",dpi=300)
#plt.show()
plt.close('all')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment