from scipy import special
import numpy as np
import matplotlib.pyplot as plt


a=0
b=2
P = []
C = []
z=10

X = np.arange(a-1, b+1, 0.1)
for i in X:
    if i<a:
        P.append(0)
        C.append(0)
    elif i>b:
        P.append(0)
        C.append(1)
    else:
        P.append(1.0/(b-a))
        C.append((i-a)/(b-a))

plt.figure('Probability Distribution')
plt.plot(X, P)
x_axis = np.arange(a-1, b+1, 0.2)
y_axis = np.arange(0, 1.1, 0.1)
plt.xticks(x_axis)
plt.yticks(y_axis)
plt.xlabel('x')
plt.ylabel('Pr[X=x]')
plt.title('Uniform PDF with a=%.2f and b=%.2f' %(a, b))

if(1):
    plt.figure('Cumulative Distribution')
    plt.plot(X, C)
    x_axis = np.arange(a-1, b+1, 0.2)
    y_axis = np.arange(0, 1.1, 0.1)
    plt.xticks(x_axis)
    plt.yticks(y_axis)
    plt.xlabel('x')
    plt.ylabel('Pr[X<=x]')
    plt.title('Uniform CDF with a=%.2f and b=%.2f' %(a, b))

plt.show()
