Although this is old, I wanted to add this for completeness. You can also rotate a Rectangle through the class's built in methods. Use the set_angle function to determine the angle to rotate and the rotation_point property to set the point of rotation.
from matplotlib.patches import Rectangle
rect1 = Rectangle(xy=(0, 0), width=2, height=1, color='blue')
rect2 = Rectangle(xy=(0, 0), width=2, height=1, angle=45, rotation_point='xy', color='red')
rect3 = Rectangle(xy=(0, 0), width=2, height=1, color='green')
rect3.set_angle(90)

Notice that you can also easily change the point that the patch is rotated around by calling the rotation_point method. Official documentation is here.
Rectangleto myax(this works fine) but instead of a straight rectangle, I want it to be tilted of 45 degrees. The final aim is to represent a "cut" in the axis.