0% found this document useful (0 votes)
33 views11 pages

Code For Graph

Class notes
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
33 views11 pages

Code For Graph

Class notes
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 11

Detection rate with 10 features

import numpy as np

import matplotlib.pyplot as plt

import matplotlib.colors as mcolors

# set width of bar

barWidth = 0.15

fig = plt.subplots(figsize =(15, 8))

# set height of bar

SVMNB = [93.65,89.90,85.90,78.24]

SVMRF = [94.56,84.78,93.45,74.98]

KNNDT = [97.78,87.42,96.34,68.76]

KNNLR = [94.19,81.52,97.86,71.92]

KNNSVM = [98.75,90.31,98.99,79.96]

# Set position of bar on X axis

br1 = np.arange(len(SVMNB))

br2 = [x + barWidth for x in br1]

br3 = [x + barWidth for x in br2]

br4 = [x + barWidth for x in br3]

br5 = [x + barWidth for x in br4]

# Make the plot

plt.bar(br1, SVMNB, color ='aqua', width = barWidth,

edgecolor ='grey', label ='SVMNB')

plt.bar(br2, SVMRF, color ='turquoise', width = barWidth,

edgecolor ='grey', label ='SVMRF')

plt.bar(br3, KNNDT, color ='mediumspringgreen', width = barWidth,

edgecolor ='grey', label ='KNNDT')

plt.bar(br4, KNNLR, color ='blue', width = barWidth,

edgecolor ='grey', label ='KNNLR')

plt.bar(br5, KNNSVM, color ='royalblue', width = barWidth,

edgecolor ='grey', label ='KNNSVM')

# giving title to the plot


plt.title("Detection Rate With 10 Features", fontweight ='bold', fontsize = 15)

# Adding Xticks

plt.xlabel('Attacks', fontweight ='bold', fontsize = 15)

plt.ylabel('Detection Rate', fontweight ='bold', fontsize = 15)

plt.xticks([r + barWidth for r in range(len(SVMNB))],

['DoS', 'Probe', 'R2L', 'U2R'])

plt.legend()

plt.show()

Detection rate with 41 features

import numpy as np

import matplotlib.pyplot as plt

import matplotlib.colors as mcolors

# set width of bar

barWidth = 0.15

fig = plt.subplots(figsize =(15, 8))

# set height of bar

SVMNB = [92.48,83.84,81.65,76.33]

SVMRF = [89.76,80.23,90.65,71.34]

KNNDT = [97.31,83.62,95.43,68.04]

KNNLR = [93.61,80.31,94.32,70.12]

KNNSVM = [98.04,89.38,96.72,74.21]

# Set position of bar on X axis

br1 = np.arange(len(SVMNB))

br2 = [x + barWidth for x in br1]

br3 = [x + barWidth for x in br2]

br4 = [x + barWidth for x in br3]

br5 = [x + barWidth for x in br4]

# Make the plot

plt.bar(br1, SVMNB, color ='aqua', width = barWidth,


edgecolor ='grey', label ='SVMNB')

plt.bar(br2, SVMRF, color ='turquoise', width = barWidth,

edgecolor ='grey', label ='SVMRF')

plt.bar(br3, KNNDT, color ='mediumspringgreen', width = barWidth,

edgecolor ='grey', label ='KNNDT')

plt.bar(br4, KNNLR, color ='blue', width = barWidth,

edgecolor ='grey', label ='KNNLR')

plt.bar(br5, KNNSVM, color ='royalblue', width = barWidth,

edgecolor ='grey', label ='KNNSVM')

# giving title to the plot

plt.title("Detection Rate With 41 Features", fontweight ='bold', fontsize = 15)

# Adding Xticks

plt.xlabel('Attacks', fontweight ='bold', fontsize = 15)

plt.ylabel('Detection Rate', fontweight ='bold', fontsize = 15)

plt.xticks([r + barWidth for r in range(len(SVMNB))],

['DoS', 'Probe', 'R2L', 'U2R'])

plt.legend()

plt.show()

False Alarm Rate With 10 Features

import numpy as np

import matplotlib.pyplot as plt

import matplotlib.colors as mcolors

# set width of bar

barWidth = 0.15

fig = plt.subplots(figsize =(15, 8))

# set height of bar

SVMNB = [0.05,0.02,0.06,0.07]

SVMRF = [0.03,0.03,0.08,0.05]

KNNDT = [0.02,0.03,0.04,0.08]

KNNLR = [0.03,0.02,0.02,0.07]
KNNSVM = [0.01,0.01,0.01,0.02]

# Set position of bar on X axis

br1 = np.arange(len(SVMNB))

br2 = [x + barWidth for x in br1]

br3 = [x + barWidth for x in br2]

br4 = [x + barWidth for x in br3]

br5 = [x + barWidth for x in br4]

# Make the plot

plt.bar(br1, SVMNB, color ='aqua', width = barWidth,

edgecolor ='grey', label ='SVMNB')

plt.bar(br2, SVMRF, color ='turquoise', width = barWidth,

edgecolor ='grey', label ='SVMRF')

plt.bar(br3, KNNDT, color ='mediumspringgreen', width = barWidth,

edgecolor ='grey', label ='KNNDT')

plt.bar(br4, KNNLR, color ='blue', width = barWidth,

edgecolor ='grey', label ='KNNLR')

plt.bar(br5, KNNSVM, color ='royalblue', width = barWidth,

edgecolor ='grey', label ='KNNSVM')

# giving title to the plot

plt.title("False Alarm Rate With 10 Features", fontweight ='bold', fontsize = 15)

# Adding Xticks

plt.xlabel('Attacks', fontweight ='bold', fontsize = 15)

plt.ylabel('FAR(%)', fontweight ='bold', fontsize = 15)

plt.xticks([r + barWidth for r in range(len(SVMNB))],

['DoS', 'Probe', 'R2L', 'U2R'])

plt.legend()

plt.show()

Accuracy for 41 features

import numpy as np

import matplotlib.pyplot as plt

import matplotlib.colors as mcolors


# set width of bar

barWidth = 0.16

fig = plt.subplots(figsize =(15, 8))

# set height of bar

SVMNB = [87.12,87.44,87.32,88.32]

SVMRF = [85.65,90.67,89.17,91.92]

KNNDT = [84.57,84.93,82.56,84.75]

KNNLR = [86.58,90.63,90.13,85.17]

KNNSVM = [90.68,93.06,91.35,91.83]

# Set position of bar on X axis

br1 = np.arange(len(SVMNB))

br2 = [x + barWidth for x in br1]

br3 = [x + barWidth for x in br2]

br4 = [x + barWidth for x in br3]

br5 = [x + barWidth for x in br4]

# Make the plot

plt.bar(br1, SVMNB, color ='aqua', width = barWidth,

edgecolor ='grey', label ='SVMNB')

plt.bar(br2, SVMRF, color ='turquoise', width = barWidth,

edgecolor ='grey', label ='SVMRF')

plt.bar(br3, KNNDT, color ='mediumspringgreen', width = barWidth,

edgecolor ='grey', label ='KNNDT')

plt.bar(br4, KNNLR, color ='blue', width = barWidth,

edgecolor ='grey', label ='KNNLR')

plt.bar(br5, KNNSVM, color ='royalblue', width = barWidth,

edgecolor ='grey', label ='KNNSVM')

# giving title to the plot

plt.title("Accuracy for 41 Features", fontweight ='bold', fontsize = 15)

# Adding Xticks

plt.xlabel('Attacks', fontweight ='bold', fontsize = 15)


plt.ylabel('ACCURACY(%)', fontweight ='bold', fontsize = 15)

plt.xticks([r + barWidth for r in range(len(SVMNB))],

['DoS', 'Probe', 'R2L', 'U2R']

plt.legend()

plt.show()

F-Measure for 41 features

import numpy as np

import matplotlib.pyplot as plt

import matplotlib.colors as mcolors

# set width of bar

barWidth = 0.16

fig = plt.subplots(figsize =(15, 8))

# set height of bar

SVMNB = [0.87,0.89,0.75,0.29]

SVMRF = [0.84,0.82,0.86,0.50]

KNNDT = [0.94,0.85,0.63,0.26]

KNNLR = [0.92,0.81,0.68,0.46]

KNNSVM = [0.93,0.88,0.71,0.51]

# Set position of bar on X axis

br1 = np.arange(len(SVMNB))

br2 = [x + barWidth for x in br1]

br3 = [x + barWidth for x in br2]

br4 = [x + barWidth for x in br3]

br5 = [x + barWidth for x in br4]

# Make the plot

plt.bar(br1, SVMNB, color ='aqua', width = barWidth,

edgecolor ='grey', label ='SVMNB')

plt.bar(br2, SVMRF, color ='turquoise', width = barWidth,

edgecolor ='grey', label ='SVMRF')

plt.bar(br3, KNNDT, color ='mediumspringgreen', width = barWidth,


edgecolor ='grey', label ='KNNDT')

plt.bar(br4, KNNLR, color ='blue', width = barWidth,

edgecolor ='grey', label ='KNNLR')

plt.bar(br5, KNNSVM, color ='royalblue', width = barWidth,

edgecolor ='grey', label ='KNNSVM')

# giving title to the plot

plt.title("F-Measure for 41 features", fontweight ='bold', fontsize = 15)

# Adding Xticks

plt.xlabel('Attacks', fontweight ='bold', fontsize = 15)

plt.ylabel('F-Measure(%)', fontweight ='bold', fontsize = 15)

plt.xticks([r + barWidth for r in range(len(SVMNB))],

['DoS', 'Probe', 'R2L', 'U2R'])

plt.legend()

plt.show()

Precision for 10 features:

import numpy as np

import matplotlib.pyplot as plt

import matplotlib.colors as mcolors

# set width of bar

barWidth = 0.15

fig = plt.subplots(figsize =(15, 8))

# set height of bar

SVMNB = [0.91,0.85,0.78,0.82]

SVMRF = [0.89,0.80,0.81,0.80]

KNNDT = [0.90,0.89,0.85,0.87]

KNNLR = [0.87,0.83,0.83,0.78]

KNNSVM = [0.92,0.91,0.93,0.90]

# Set position of bar on X axis

br1 = np.arange(len(SVMNB))
br2 = [x + barWidth for x in br1]

br3 = [x + barWidth for x in br2]

br4 = [x + barWidth for x in br3]

br5 = [x + barWidth for x in br4]

# Make the plot

plt.bar(br1, SVMNB, color ='aqua', width = barWidth,

edgecolor ='grey', label ='SVMNB')

plt.bar(br2, SVMRF, color ='turquoise', width = barWidth,

edgecolor ='grey', label ='SVMRF')

plt.bar(br3, KNNDT, color ='mediumspringgreen', width = barWidth,

edgecolor ='grey', label ='KNNDT')

plt.bar(br4, KNNLR, color ='blue', width = barWidth,

edgecolor ='grey', label ='KNNLR')

plt.bar(br5, KNNSVM, color ='royalblue', width = barWidth,

edgecolor ='grey', label ='KNNSVM')

# giving title to the plot

plt.title("Precision for 10 features", fontweight ='bold', fontsize = 15)

# Adding Xticks

plt.xlabel('Attacks', fontweight ='bold', fontsize = 15)

plt.ylabel('Precision', fontweight ='bold', fontsize = 15)

plt.xticks([r + barWidth for r in range(len(SVMNB))],

['DoS', 'Probe', 'R2L', 'U2R'])

plt.legend()

plt.show()

Precision for 41 features:

import numpy as np

import matplotlib.pyplot as plt

import matplotlib.colors as mcolors

# set width of bar


barWidth = 0.15

fig = plt.subplots(figsize =(15, 8))

# set height of bar

SVMNB = [0.87,0.80,0.73,0.78]

SVMRF = [0.84,0.75,0.79,0.75]

KNNDT = [0.85,0.83,0.80,0.83]

KNNLR = [0.81,0.80,0.77,0.73]

KNNSVM = [0.89,0.87,0.90,0.88]

# Set position of bar on X axis

br1 = np.arange(len(SVMNB))

br2 = [x + barWidth for x in br1]

br3 = [x + barWidth for x in br2]

br4 = [x + barWidth for x in br3]

br5 = [x + barWidth for x in br4]

# Make the plot

plt.bar(br1, SVMNB, color ='aqua', width = barWidth,

edgecolor ='grey', label ='SVMNB')

plt.bar(br2, SVMRF, color ='turquoise', width = barWidth,

edgecolor ='grey', label ='SVMRF')

plt.bar(br3, KNNDT, color ='mediumspringgreen', width = barWidth,

edgecolor ='grey', label ='KNNDT')

plt.bar(br4, KNNLR, color ='blue', width = barWidth,

edgecolor ='grey', label ='KNNLR')

plt.bar(br5, KNNSVM, color ='royalblue', width = barWidth,

edgecolor ='grey', label ='KNNSVM')

# giving title to the plot

plt.title("Precision for 41 features", fontweight ='bold', fontsize = 15)

# Adding Xticks

plt.xlabel('Attacks', fontweight ='bold', fontsize = 15)

plt.ylabel('Precision', fontweight ='bold', fontsize = 15)


plt.xticks([r + barWidth for r in range(len(SVMNB))],

['DoS', 'Probe', 'R2L', 'U2R'])

plt.legend()

plt.show()

Specificity for 10 features:

import numpy as np

import matplotlib.pyplot as plt

import matplotlib.colors as mcolors

# set width of bar

barWidth = 0.15

fig = plt.subplots(figsize =(15, 8))

# set height of bar

SVMNB = [0.93,0.88,0.84,0.91]

SVMRF = [0.89,0.83,0.88,0.94]

KNNDT = [0.95,0.94,0.93,0.91]

KNNLR = [0.91,0.92,0.96,0.89]

KNNSVM = [1,0.98,1,0.99]

# Set position of bar on X axis

br1 = np.arange(len(SVMNB))

br2 = [x + barWidth for x in br1]

br3 = [x + barWidth for x in br2]

br4 = [x + barWidth for x in br3]

br5 = [x + barWidth for x in br4]

# Make the plot

plt.bar(br1, SVMNB, color ='aqua', width = barWidth,

edgecolor ='grey', label ='SVMNB')

plt.bar(br2, SVMRF, color ='turquoise', width = barWidth,

edgecolor ='grey', label ='SVMRF')

plt.bar(br3, KNNDT, color ='mediumspringgreen', width = barWidth,


edgecolor ='grey', label ='KNNDT')

plt.bar(br4, KNNLR, color ='blue', width = barWidth,

edgecolor ='grey', label ='KNNLR')

plt.bar(br5, KNNSVM, color ='royalblue', width = barWidth,

edgecolor ='grey', label ='KNNSVM')

# giving title to the plot

plt.title("Specificity for 10 features", fontweight ='bold', fontsize = 15)

# Adding Xticks

plt.xlabel('Attacks', fontweight ='bold', fontsize = 15)

plt.ylabel('Specificity', fontweight ='bold', fontsize = 15)

plt.xticks([r + barWidth for r in range(len(SVMNB))],

['DoS', 'Probe', 'R2L', 'U2R'])

plt.legend(loc ="upper right")

plt.show()

Specificity for 41 features:

You might also like