from matplotlib import pyplot as plt
from numpy import linspace, arange, logspace
from matplotlib.patches import Polygon
plt.rc('text', usetex=True)
plt.rc('font', family='serif')
limits = [1,4]
x1 = linspace(0.1,8,80)
y1 = 1./(x1 * x1)
x2 = linspace(1,7,8)
y2 = 1./(x2 * x2)
x3 = arange(limits[0], limits[1],0.01)
y3 = 1./(x3 * x3)
verts = [(limits[0],0)] + list(zip(x3,y3)) + [(limits[1],0)]
poly = Polygon(verts, facecolor='orange',edgecolor='k')
fig = plt.figure(figsize=(5,5), dpi=100)
ax = fig.add_subplot(111)
ax.grid(True)
ax.plot(x1,y1)
ax.plot(x2,y2,'ro')
ax.add_patch(poly)
ax.text(1.2,1,r"$\displaystyle f(x)=\frac{1}{x^2}$")
ax.text(1.3,.05,r"$\displaystyle " + "\int_{}^{}".format(limits[0], limits[1]) + "f(x)\mathrm{d}x$")
ax.set_xlim(0,8)
ax.set_ylim(0,1.2)
ax.set_yticks(linspace(0,1,6))
ax.minorticks_on()
ax.set_xlabel("x")
ax.set_ylabel("y")
fig.savefig("1_over_x_squared_integral.svg",bbox_inches="tight",\
pad_inches=.15)