#!/usr/bin/python import numpy as np import matplotlib.pyplot as plt from matplotlib.patches import Polygon plt.rcParams['legend.fontsize'] = 10 fig = plt.figure () ax = fig.gca () x = np.linspace (-2, 2, 5000) y = np.cos (np.pi * x) ax.plot (x, y, label='$y=Re((-1)^{x})$') ax.legend () a, b = 0, 1 ix = np.linspace (a, b) iy = np.cos (np.pi * ix) verts = [(a,0)] + zip (ix, iy) + [(b,0)] poly = Polygon (verts, facecolor='0.9', edgecolor='0.5') ax.add_patch (poly) ax.set_xticks ([-2, -1, 1, 2]) ax.spines['left'].set_position ('center') ax.spines['right'].set_position ('center') ax.set_yticks ([-1, -0.5, 0.5, 1]) ax.spines['top'].set_position ('center') ax.spines['bottom'].set_position ('center') plt.show ()